2012-04-20 59 views
1

我寫了一個簡單的android列表視圖,但它在運行時拋出java.lang.NullPointerException異常。在調試模式下檢查它,似乎findViewbyId返回null。 所以,當我到達setAdapter時,它會拋出異常。但是列表確實存在於R.java文件和main.xml中。我怎樣才能解決這個問題?Android:Listview空指針異常

setContentView(my.namespace.R.layout.main); 
    String[] a={"asd","asdsad"}; 
    ListView lt; 
    lt = (ListView) findViewById(R.id.list);   
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,my.namespace.R.layout.rowitem, a); 
    lt.setAdapter(adapter); 

的main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" > 

<ListView 
    android:id="@+id/list" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 
</ListView> 

</LinearLayout> 
+0

你能告訴我rowitem.xml文件的代碼? – 2012-04-20 05:26:59

+1

你似乎指的是不同的R文件(my.namespace.R和R)。你可以看看'ListActivity',如果你想要的只是一個'ListView',在這種情況下你不需要調用setContentView' – Rajesh 2012-04-20 05:30:26

+0

是否使用自定義'ArrayAdapter'? @Rajesh我認爲'setContentView'是主要的'活動'。 – Mayank 2012-04-20 05:35:51

回答

2

是您的活動來延長ListActivity?如果擴展ListActivity,則不需要單獨的佈局。請參閱this教程以獲得進一步參考。

0

WIRTE這樣的:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,my.namespace.R.layout.simple_list_item_1, a); 

是指THIS