我有一个MainActivity和一个扩展的DsiplayClass。在这个DisplayClass中,我想通过setContentView更改ContentView,但我得到的只是一个NullPointerException。
请帮帮我,告诉我原因。
MainActivity:
public class Main extends Activity {
DisplayClass display;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
display = new DisplayClass();
display.showMain();
}
}
DisplayClass:
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();"。
请帮帮我。
答案 0 :(得分:1)
你到底想要做什么?您应该将setContentView(R.layout.mainmenu);
放入Main
班级' onCreate()
方法。完全删除DisplayClass
。
你得到一个空指针的原因是因为Activity
,(DisplayClass
),实际上并没有被启动。"
public class DisplayClass {
public static showMain(Activity main) {
main.setContentView(R.id.layoutmain);
}
}
然后在onCreate
Main
的{{1}}方法内...
Activity