Java setContentView引发NullPointerException
我有一个MainActivity和一个扩展的DsiplayClass。在这个DisplayClass中,我想通过setContentView更改ContentView,但我得到的只是一个NullPointerException 请帮帮我,告诉我为什么 main活动:Java setContentView引发NullPointerException,java,android,class,nullpointerexception,setcontentview,Java,Android,Class,Nullpointerexception,Setcontentview,我有一个MainActivity和一个扩展的DsiplayClass。在这个DisplayClass中,我想通过setContentView更改ContentView,但我得到的只是一个NullPointerException 请帮帮我,告诉我为什么 main活动: public class Main extends Activity { DisplayClass display; @Override protected void onCreate(Bundle sa
public class Main extends Activity {
DisplayClass display;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
display = new DisplayClass();
display.showMain();
}
}
public class DisplayClass extends Main {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public void DisplayClass() {
}
public void showMain() {
setContentView(R.layout.mainmenu);
}
}
DisplayClass:
public class Main extends Activity {
DisplayClass display;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
display = new DisplayClass();
display.showMain();
}
}
public class DisplayClass extends Main {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public void DisplayClass() {
}
public void showMain() {
setContentView(R.layout.mainmenu);
}
}
NullPointerException是在我设置“setContentView(R.layout.mainmenu);”的那一行和这一行中的“display.showMain();”中引起的
请帮帮我。你到底想在这里做什么?你应该把你的
setContentView(R.layout.main菜单)在Main
class'onCreate()
方法中的code>。完全删除DisplayClass
获取空指针的原因是,Activity
(DisplayClass
)实际上尚未“启动”
然后在Main
活动中的onCreate
方法中
DisplayClass.showMain(this);
想清理我的代码。把所有的东西放在一起与展示什么有关。请原谅我的英语能力不足。我不建议这样做,好先生。但是,如果您确实有这样做的理由,那么就不应该让DisplayClass
extendMain
。相反,您应该只创建一个常规类,然后使用静态方法setMain(Activity main)
并且在方法中调用main.setContentView(R.layout.main菜单)
。非常感谢!!!!目前我是Java的初学者。谢谢你的帮助和耐心。