我可以在主类中轻松设置内容视图,而当我在不同的类中设置时,应用程序崩溃。
以下是一个例子:
MainActivity类:
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //HERE <-----
new SecondClass();
}
}
SecondClass类:
public class SecondClass extends Activity
{
public SecondClass()
{
setContentView(R.layout.activity_info); //HERE <----
}
}
如果你知道为什么会出现这个问题,请说出我和其他人一样。 谢谢,
答案 0 :(得分:1)
您不能以这种方式创建Activity的新实例,您必须使用intent机制。见这里:http://developer.android.com/training/basics/firstapp/starting-activity.html。然后覆盖SecondActivity的onCreate()方法,调用super和setContentView()。
答案 1 :(得分:1)
constructor
中不应该有Activity
。
public SecondClass(){
setContentView(R.layout.activity_info); //HERE <----
}
删除它并将其放在onCreate()
内,就像你在第一个Activity
中一样。
这不是您创建Activity
new SecondClass();
使用Activity
创建Intent
的实例。
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //HERE <-----
Intent i = new Intent(MainActivity.this, SecondClass.class);
startActivity(i);
}
}
我不太确定你在做什么,但你通常不会这样做,因为它会在创建第一个Activity
后立即开始。{/ p>