2011-11-21 55 views
1

我想使用其中一個內置的android佈局android.R.layout.simple_list_item_multiple_choice複選框使ListActivity。有關背景,我在獲取私人AsyncTask列表中,然後調用適配器這樣的:android默認xml佈局不加載

listActivity.setListAdapter(new ArrayAdapter<String>(listActivity, 
    android.R.layout.simple_list_item_multiple_choice, mDisplayList)); 

然而,當我跑我的代碼,該ListView顯示有list_item.xml,我使用所有這我的項目中的其他ListViews。任何想法爲什麼發生這種情況?

+0

由於您的問題與Java程序包使用情況更相關,因此我已重新使用-android -listview -layout + java。 – Renaud

+0

我從答案中意識到我的問題並不像我以前那樣清楚。希望編輯有幫助。 – caltangelo

回答

1

沒有使用正確的xml佈局的原因是因爲我的AsyncTask擴展了我的(其他)自定義AsyncTask,使用另一個xml佈局,我留在這一行。

super.onPostExecute(); 

這是在方法的結尾,所以繼承的佈局超過了我想要的。

0

由於您明確使用android.R.layout.simple_list_item_multiple_choice來調用它,因此不需要導入android.R.layout

That post可能有用。

從評論更新

很難找出什麼問題。你有沒有嘗試清理你的項目並重建?有時候android int id只是做一些奇怪的事情,如果你不清理項目並重新生成gen文件。但是搞亂android內部引用是不太可能的......如果它不起作用,你可能會在別的地方有另一個污染的setListAdapter,但是如果沒有你的完整項目很難說。

0

當你用這種方式使用android R:android.R.layout...比你已經擁有的包類android類名前R

如果您明確提供了一個包含完整包名稱的類名稱,則不需要導入它。

這是爲了您使用android.R和生成的R類時經常發生的不同包中的相同類名的情況。