【问题标题】:Using onClick to open a new android activity [duplicate]使用onClick打开一个新的android活动[重复]
【发布时间】:2016-11-15 17:16:43
【问题描述】:

我已经看到了一些与此类似的其他问题,但我似乎仍然无法得到答案。

理想情况下,我希望使用如下所示的意图方法来切换到另一个活动。

这是我的 MainActivity。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}
public void sendCalc (View view){
    Intent intent = new Intent (this, MainActivity.class);
    startActivity(intent);
}

这是我的第二个活动: {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Intent intent = getIntent();
}

这是我的按钮的 xml 文件。

 <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/createCalc"
        android:onClick="sendCalc"
        android:elevation="2dp" />

另外,我在清单文件中添加了第二个活动。

提前感谢您的帮助。

【问题讨论】:

  • 第二个活动的名称是什么? MainActivity 是您要开始的第二个活动吗? Intent intent = new Intent (this, MainActivity.class);
  • @ShobhitPuri 第二个活动叫做计算
  • 所以不用 MaijActivity.class 使用第二个活动名称

标签: android xml android-studio


【解决方案1】:

我会给你一个我的应用程序代码的例子来改变下一个活动

NextPage = (Button)findViewById(R.id.button);

    NextPage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent (MainActivity.this, Main2Activity.class);
            startActivity(intent);

        }
    });

你把这个放在:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

【讨论】:

  • 对不起,这可能很愚蠢,但NextPage 代表什么
  • 我收到很多错误
  • 您需要有一个按钮来执行 OnClick 意图 “NextPage”是 MainActivity.class 中的按钮名称
  • 您需要创建另一个活动,以便它可以移动到那里,否则您将无法从此代码中得到任何东西
  • 我还有一个叫做计算的活动。这是完整的:
猜你喜欢
  • 1970-01-01
  • 2012-07-23
  • 1970-01-01
  • 1970-01-01
  • 2017-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-25
相关资源
最近更新 更多