Listview行颜色未从asynctask更改

时间:2015-06-24 18:52:10

标签: android listview android-listview android-asynctask android-drawable

我正在尝试从异步任务postexecute方法更新listview的颜色。

我在做((View) lstChoices.getAdapter().getView(0,null, lstChoices)).setBackgroundColor(Color.RED);

但是这没有做任何事情,但我在我的自定义适配器的getView方法中尝试了相同的功能,然后它工作了,row.setBackgroundColor(Color.RED); 我有什么想法吗?

由于

2 个答案:

答案 0 :(得分:1)

你不应该这样改变。所有与行相关的内容都应该在适配器中处理。这意味着如果您更改了任何可能影响背景颜色的内容,那么您应该做的只是notifyDatsetChanged(),这会触发列表重绘。然后应该通过适配器更改b / g颜色。

答案 1 :(得分:0)

根据项目的状态,明确呈现Listview项目背景颜色的方法是Programmatically select item ListView in Android

因为你正在寻找'postexecute',或许改变Item的状态并使用这种方法可以帮助你获得你想要的东西。