Caused by: java.lang.NullPointerException
at com.myapp.code.WordDescription.onRestart(WordDescription.java:685)
at android.app.Instrumentation.callActivityOnRestart(Instrumentation.java:1245)
at android.app.Activity.performRestart(Activity.java:3892)
at android.app.Activity.performResume(Activity.java:3911)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2424)
我真的不明白为什么我一直在WordDescription.onRestart上收到错误。 许多人抱怨力量密切的问题。关于如何解决这个问题的任何线索?感谢
我认为这个是相关的..
public class MyArrayAdapter extends ArrayAdapter<String> {
private final Activity context;
private final String[] aListText;
private final String [] meaningText;
public MyArrayAdapter(Activity context, String[] wordText, String[] meaningText) {
super(context, R.layout.desclist2, wordText);
this.context=context;
this.aListText= wordText;
this.meaningText=meaningText;
}
} // .....
@Override
public void onRestart(){
super.onRestart();
clickFlag = false;
clickWordFlag = false;
myArrayAdapter.notifyDataSetChanged(); <-- line 685
}
Handler handler = new Handler(){ <-- line 709
@Override
public void handleMessage(Message msg){
progressDialog.dismiss();
if{ ....
}else{
myArrayAdapter = new MyArrayAdapter(WordDescription.this, wordArray, meaningArray);
listView.setAdapter(myArrayAdapter);
}
}
答案 0 :(得分:3)
变化
myArrayAdapter.notifyDataSetChanged();
到
if(myArrayAdapter != null)
myArrayAdapter.notifyDataSetChanged();
我强烈建议你做一些 Vipul Shah 在评论中说的话。
答案 1 :(得分:1)
尝试这样......
myArrayAdapter = new MyArrayAdapter(WordDescription.this, wordArray, meaningArray);
listView.setAdapter(myArrayAdapter);
if(myArrayAdapter != null){
myArrayAdapter.notifyDataSetChanged();
}