1

我想在列表视图中突出显示选定的项目。在一种情况下,如果用户从列表视图中选择任何项目,列表视图会冻结,如果用户再次进入该屏幕,该项目将显示为已选中。(请注意,并非每次都如此)。那么有什么方法可以让我通过一些背景颜色来显示一些选定的项目。但这需要在活动类文件NOT IN ADAPTER中完成。

我试过了

        MYListAdapter adapter = (GenericListAdapter) lvList.getAdapter();
        View view = adapter.getView(position, null, null);
        view.setBackgroundColor(color.holo_orange_dark);

但它没有按预期工作。任何机构都可以建议我任何事情。

4

2 回答 2

0

adapter.getView(position, null, null)创建一个新视图,而不是返回 listView 中使用的视图。您可以尝试获取 listView 并按位置获取其子项。像这样:

lvList.getChildAt(position).setBackgroundColor(color.holo_orange_dark);

但我认为这不是正确的方法,因为 ListView 可以随时重新创建视图。所以正确的方法是适配器..

于 2013-07-29T08:31:33.157 回答
0

可以看到apiDemo->Views->Lists->Activate items。很简单,只需要setChoiceMode并提供背景选择器。顺便说一下,你应该看到android4.x apiDemo。

于 2013-07-29T09:16:25.747 回答