我正在尝试从异步任务postexecute方法更新listview的颜色。
我在做((View) lstChoices.getAdapter().getView(0,null, lstChoices)).setBackgroundColor(Color.RED);
但是这没有做任何事情,但我在我的自定义适配器的getView方法中尝试了相同的功能,然后它工作了,row.setBackgroundColor(Color.RED);
我有什么想法吗?
由于
答案 0 :(得分:1)
你不应该这样改变。所有与行相关的内容都应该在适配器中处理。这意味着如果您更改了任何可能影响背景颜色的内容,那么您应该做的只是notifyDatsetChanged()
,这会触发列表重绘。然后应该通过适配器更改b / g颜色。
答案 1 :(得分:0)
根据项目的状态,明确呈现Listview项目背景颜色的方法是Programmatically select item ListView in Android
因为你正在寻找'postexecute',或许改变Item的状态并使用这种方法可以帮助你获得你想要的东西。