我正在尝试创建一个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设置为应用程序启动时的活动不会导致错误,但我需要用户能够在“开始”和“退出”之间进行选择。非常感谢帮助。谢谢!
答案 0 :(得分:0)
关于是否最好使用onClick属性或以编程方式设置事物存在争议。我会选择后面的选项,这个问题是related answer。
删除onClick
属性并在onClickListener
之后添加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);
}
});
}