0

我正在尝试创建一个 Android 项目,该项目具有一个名为 MainActivity 的类,该类连接到带有开始和退出按钮的布局。开始按钮应该执行代码来调用另一个调用画布的类,但是当我有意调用它时总是会出错。

public class MainActivity extends Activity {

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

public void startbtn(View v){
    Intent i=new Intent(v.getContext(),CanvasCall.class);
    startActivity(i);
}

它应该调用具有以下代码的 CanvasCall:

public class CanvasCall extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(new MyCanvas2(this));
}   }

但是,按下开始按钮会导致强制关闭。将 CanvasCall 设置为应用程序启动时的活动虽然不会导致错误,但我需要用户能够在“开始”和“退出”之间进行选择。非常感谢您的帮助。谢谢!

4

1 回答 1

0

关于是否最好使用 onClick 属性或以编程方式设置事物存在争议。我会选择后一种选择,这是关于这个问题的相关答案。

所以删除onClick属性并添加一个onClickListenerafter setContentView(...)

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    findViewById(R.id.btn_next).setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent i = new Intent(MainActivity.this, CanvasCall.class);
                startActivity(i);
            }
        });
}
于 2013-10-08T09:45:53.047 回答