java 安卓默认xml布局未加载
我正在尝试使用一个内置的安卓布局安卓.R.layout.simple_list_item_multiple_choice
创建一个带有复选框的ListActivity。在后台,我在私有AsyncTask
中获取列表,然后像这样调用适配器:
listActivity.setListAdapter(new ArrayAdapter<String>(listActivity,
安卓.R.layout.simple_list_item_multiple_choice, mDisplayList));
但是,当我运行代码时,ListView
与list_item.xml
一起显示,我在项目中的所有其他列表视图中使用它。知道为什么会这样吗
# 1 楼答案
当您以这种方式使用android R:
android.R.layout...
时,在类名R
之前已经有了包android
如果您显式地提供了一个包含完整包名的类名,那么也不需要导入它
在这种情况下,您从不同的包中拥有相同的类名,这在您使用android时经常发生。R和生成的R类
# 2 楼答案
您不需要导入
android.R.layout
,因为您使用android.R.layout.simple_list_item_multiple_choice
显式地调用它That post可能有用
根据评论更新
很难找出问题所在。您是否尝试清理项目并重建?有时候,如果你不清理项目并重新生成gen文件,android int-id就会做一些奇怪的事情。但搞乱android内部引用的可能性很小……如果它不起作用,你可能会在其他地方有另一个污染性的setListAdapter,但如果没有完整的项目,很难说
# 3 楼答案
没有使用正确的xml布局的原因是因为我的AsyncTask扩展了使用另一个xml布局的(其他)自定义AsyncTask,我在这一行中离开了
在方法的末尾,继承的布局胜过了我想要的布局