2013-04-01 27 views
0

我看到很多問題在同一主題上的stackoverflow問,但我的例外。XML佈局有一個ListView - 但仍然ListView id沒有發現異常

下面是我的XML佈局。我有一個listView。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" android:background="#FFFFFF"> 

    <ListView 
     android:id="@+id/list" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="#656565" 
     android:paddingLeft="@dimen/list_padding" 
     android:paddingRight="@dimen/list_padding" 
     android:dividerHeight="20.0sp" 
     android:divider="#656565"/> 

</LinearLayout> 

下面是我的片段類。

public class FragmentClass extends SherlockListFragment implements AsyncListner{ 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {  
      return inflater.inflate(R.layout.documents, container, false); 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState){ 

    } 

     @Override 
     public void onLoadComplete(List<DocumentResponse> data) {   
      DocumentsAdapter adapter = new DocumentsAdapter(getSherlockActivity(), 
        R.id.list, data); 
      setListAdapter(adapter); 
     } 

} 

一旦的onLoadComplete通話結束後,我想創建我的ListView。但是我得到這個錯誤。 「您的內容必須有一個ListView,其id屬性是android.R.id.list

回答

1

變化android:id="@+id/list"android:id="@android:id/list"

有了這個,你正在使用的要求android.R.id.list ID。

不要忘了更新代碼,也

DocumentsAdapter adapter = new DocumentsAdapter(getSherlockActivity(), android.R.id.list, data); 
+0

爲什麼這會解決這個問題,爲什麼我的拋出一個錯誤。 – Kevin

+0

因爲你的'id.list'具有不同的值,並且android通過搜索預定義值android.R.id.list來檢查佈局中是否有列表視圖。所以你只需要重用android中已經生成的id。 – WarrenFaith