我正在尝试让我的mainView中定义的listView显示我的对象列表。当我的活动扩展到ListActivity并使用getListView()时,这工作正常。现在我从一个普通的Activity扩展,并希望将我的自定义适配器插入到我的R.id.list中,如下所示:
ListView lv = (ListView) findViewById(R.id.list);
lv.setTextFilterEnabled(true);
lv.setAdapter(new MyCustomAdapter(this, R.layout.custom_list, nameResults));
其中custom_list是定义行的xml文件。我的调试器一旦到达setAdapter部分就进入疯狂状态,进入奇怪的文件并最终返回NullPointerException。
我的自定义适配器btw:
public class MyCustomAdapter extends ArrayAdapter<String> {
private String[] nameResults;
public MyCustomAdapter(Context context, int textViewResourceId, String[] names) {
super(context, textViewResourceId, names);
nameResults = names;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater=getLayoutInflater();
View row=inflater.inflate(R.layout.custom_list, parent, false);
TextView label=(TextView)row.findViewById(R.id.Name);
label.setText(nameResults[position]);
TextView descr=(TextView)row.findViewById(R.id.Description);
descr.setText(linkedResults.get(nameResults[position]));
return row;
}
}
我能以任何方式恢复工作吗?我只更改了它,所以我可以在它上面有一些按钮用于上一页/下一页结构,也就是我需要setContentView(R.layout.main); (右?:P。我使用此链接构建列表视图:Custom listview with adapter。
堆栈跟踪:
07-03 12:18:02.936: ERROR/AndroidRuntime(2747): Uncaught handler: thread main exiting due to uncaught exception
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): java.lang.NullPointerException
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at com.rvthof.ShowPage.buildPage(ShowPage.java:102)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at com.rvthof.ShowPage.access$0(ShowPage.java:78)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at com.rvthof.ShowPage$1.run(ShowPage.java:74)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at android.os.Handler.handleCallback(Handler.java:587)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at android.os.Handler.dispatchMessage(Handler.java:92)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at android.os.Looper.loop(Looper.java:123)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at android.app.ActivityThread.main(ActivityThread.java:4363)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at java.lang.reflect.Method.invokeNative(Native Method)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at java.lang.reflect.Method.invoke(Method.java:521)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
07-03 12:18:03.026: ERROR/AndroidRuntime(2747): at
dalvik.system.NativeStart.main(原生方法)
答案 0 :(得分:0)
您的自定义适配器似乎无法在任何地方实例化linkedResults。你刚刚从你粘贴的东西中裁剪出来了吗?如果没有,那可能是个问题。