在Android 2.1
和2.3
中,它运行正常。但对于3.0
及以上findViewById
,找不到第二个ListView
。我已经尝试过清理项目,尝试不使用ListActivity
,没有任何帮助。有什么想法吗?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setListAdapter(List1Adaptor);
list1 = (ListView) findViewById(android.R.id.list);
list2 = (ListView) findViewById(R.id.ListView2);
list2.setAdapter(List2Adapter);//Null Pointer
}
main.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/ListView2"
android:layout_height="wrap_content"
android:layout_width="fill_parent" >
</ListView>
</LinearLayout>
<RelativeLayout
android:id="@+id/listLayout_relativeLayout2"
android:layout_height="320dp"
android:layout_width="fill_parent" >
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ListView>
</RelativeLayout>
答案 0 :(得分:0)
您的布局有android:id="@+id/listView2"
(注意:小写'l'),您的Java代码正在请求R.id.ListView2
(注意:大写'L')。尝试在两种情况下使用相同的案例。
答案 1 :(得分:0)
您的xml文件缺少根视图。我很惊讶它适用于任何版本的Android。你应该用线性布局或类似的东西包围所有东西。