我想在列表视图中突出显示所选项目。有一种情况是,如果用户从列表视图中选择任何项目,列表视图会冻结,如果用户再次进入该屏幕,该项目将显示为已选中。 (请注意,每次都不是这种情况)。那么有什么方法我可以通过一些背景颜色显示选择的项目。但这需要在活动类文件 NOT IN ADAPTER 中完成。
我试过
MYListAdapter adapter = (GenericListAdapter) lvList.getAdapter();
View view = adapter.getView(position, null, null);
view.setBackgroundColor(color.holo_orange_dark);
但它没有按预期工作。任何身体都能告诉我任何事情。
答案 0 :(得分:0)
adapter.getView(position, null, null)
创建一个新视图,而不是返回listView中使用的视图。您可以尝试获取listView并按位置获取其子项。像这样的Smth:
lvList.getChildAt(位置).setBackgroundColor(color.holo_orange_dark);
但我认为这不是正确的方法,因为ListView可以随时重新创建视图。 所以正确的方法是适配器..
答案 1 :(得分:0)
你可以看到apiDemo-> Views-> Lists->激活items.It非常简单,只需setChoiceMode并提供一个背景选择器。 顺便说一下,你应该看到android4.x apiDemo。