2010-07-03 49 views
1

我试图让我的列表视图在我的main.xml中定义显示我的对象列表。当我的活动在ListActivity上扩展并使用getListView()时,此工作正常。现在,我虽然从一个正常的活动延长,并希望插入我的自定义适配器插入我的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

什么是堆栈跟踪? – Qberticus 2010-07-03 02:32:20

+0

在调试期间的eclipse中,请打开LogCat View(Window/Show View/other/Android/logcat)并给予我们完整的例外跟踪。 – 2010-07-03 08:34:51

回答

0

您的自定义适配器没有按” t看起来是在任何地方实例化linkedResults。你是否只是裁剪出你粘贴的内容?如果不是,那可能是个问题。

+0

好找,但没有它。 – Rvthof 2010-07-03 12:19:34