android默认xml布局没有加载

时间:2011-11-21 18:34:48

标签: java android android-layout

我正在尝试使用一个内置的Android布局android.R.layout.simple_list_item_multiple_choice创建带有复选框的ListActivity。对于后台,我在私有AsyncTask中获取列表,然后像这样调用适配器:

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

然而,当我运行我的代码时,ListView显示为list_item.xml,我正在使用我的项目中的所有其他ListView。知道为什么会这样吗?

3 个答案:

答案 0 :(得分:1)

没有使用正确的xml布局的原因是因为我的AsyncTask正在扩展我的(其他)自定义AsyncTask,它使用了另一个xml布局,我离开了这一行。

super.onPostExecute();

位于方法的最后,所以继承的布局胜过我想要的那个。

答案 1 :(得分:0)

您不需要导入android.R.layout,因为您使用android.R.layout.simple_list_item_multiple_choice明确地调用它。

That post可能有用。

从评论中更新

很难弄清问题是什么。您是否尝试清理项目并重建?有时,如果你不清理项目并重新生成gen文件,那么android int id就会做一些奇怪的事情。但是搞乱android内部引用是不太可能的......如果它不起作用,你可能在其他地方有另一个污染的setListAdapter,但没有你的完整项目就很难说。

答案 2 :(得分:0)

当您以这种方式使用Android R时:android.R.layout...比您在类名android之前已经拥有包R

如果明确提供具有完整包名的类名,则也不需要导入它。

对于你使用android.R和你生成的R类时经常发生的不同包中的相同类名的情况。