此问题已在此处有答案:
How to start new activity on button click(28回答)
7年前关闭。
到目前为止,从我看过的所有教程中,大多数都只能达到“按钮被点击”的程度。我需要第二个活动按钮来打开一个新活动。
我将这个类命名为fifth_layout.xml:
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Amazon"
android:drawableLeft="@drawable/amazon"
android:drawableStart="@drawable/amazon"
android:layout_weight="0.07"
tools:ignore="HardcodedText"
android:id="@+id/button10"
android:textSize="35sp" />
之后,在我的FifthActivity.java中,我有:
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class FifthActivity extends Activity {
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fifth_layout);
Button button = (Button) findViewById(R.id.button10);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {}
});
}
}
我只需要能够打开一个新的空白活动的按钮。但当我点击按钮时,什么也没发生。我需要一个新的活动。我觉得代码是正确的,但我只是需要帮助,我可能做错了什么。
3条答案
按热度按时间qojgxg4l1#
您必须使用Intent打开新Activity。假设您要从
FifthActivity
打开一个名为SixthActivity
的Activity。你应该使用这个:
希望这有帮助,问候。
56lgkhnf2#
你的onClickListener什么也不做,当然什么也不会发生。创建一个新的Activity(假设您将其命名为
NewActivity
,将其添加到AndroidManifest.xml
并将以下代码添加到现有Activity:我有一种非常强烈的感觉,你有点迷失在Android开发中。我强烈建议你遵循Udacity的Android开发course。
qni6mghb3#
好了,现在您已经有了单个Activity及其布局,对吧?
你问的是“我如何用另一种布局启动另一个活动?”“
要做到这一点,我们将使用“意图”(将意图想象为活动如何相互交流,它们来回传递)
要创建Intent并开始,您需要以下几行:
这应该在你的onClick中起作用。
如果您在Android Studio中使用File>New>Activity创建了Activity,则应该已经将Activity放置在您的
AndroidManifest.xml
中,否则您需要自己添加它。