0

Android2.1では2.3正常に動作します。しかし、 for3.0と abovefindViewByIdでは 2 番目の が見つかりません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>
4

2 に答える 2

0

xml ファイルにルート ビューがありません。Android のどのバージョンでも動作することに驚きました。すべてを線形レイアウトなどで囲む必要があります。

于 2012-04-24T16:47:16.597 に答える
0

レイアウトにandroid:id="@+id/listView2"(注: 小文字の「l」) があり、Java コードが要求していますR.id.ListView2(注: 大文字の「L」)。両方の状況で同じケースを使用してみてください。

于 2012-04-23T23:06:06.733 に答える