SetActivityMain可以正常工作,但是Show_Soundfile_List不起作用,因为找不到ListView并导致lv = null(如果我是正确的话)。
有人知道为什么会这样吗? 两者都具有几乎相同的代码和设置,因此我不确定为什么一个人能够找到它的ListView却找不到另一个。
错误代码:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
代码:
public void SetActivityMain() {
setContentView(R.layout.activity_main);
ListView lv = (ListView) findViewById(R.id.lv_alarms);
Button btn = (Button) findViewById(R.id.btn_new_alarm);
lv.setAdapter(new MyListAdapter_alarm(MainActivity.this, R.layout.list_alarms, alarms));
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
NewAlarm(new Alarm());
}
});
}
void Show_Soundfile_List(final Alarm alarm) {
setContentView(R.layout.activity_soundfile_list);
ListView lv = (ListView) findViewById(R.id.lv_soundfiles);
Button btn = (Button) findViewById(R.id.btn_list_soundfile);
lv.setAdapter(new MyListAdapter_SoundFile(MainActivity.this, R.layout.list_soundfiles, soundfiles, alarm));
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditAlarm(alarm);
}
});
}
答案 0 :(得分:0)
我做了一次清理和重建,并且按预期工作。我从来没有遇到过这个问题,所以我没有考虑将其作为解决方案。 谢谢。