3

我创建了一个custom adapter并将其添加到列表视图中。之后,我创建了AutoCompleteTextViewButton命名为Search Button. 所以我从列表中搜索并通过单击搜索按钮,我使用此行将列表滚动到搜索的文本。

listViewOS.setSelection(position);

我的问题是

我想更改搜索过程找到的行的颜色。我有位置,我将位置传递给 getView 并尝试使用此代码更改行的颜色。

if(position == posn)
{
    Log.i("Log","Inside if");
    rowView.setBackgroundResource(R.color.red);
}
return rowView;

当位置匹配时它正在打印日志,但它不会改变行的背景颜色。

我认为它正在发生,因为我正在尝试更改已经填充的列表视图行的颜色。那么如何更改已经填充的列表视图行的颜色。我想这样做是因为我想以突出显示的颜色显示搜索到的行。

我有这个职位,但无法做到这一点。

请帮忙

4

3 回答 3

2

试试这个 :

listview.setSelection(position);
View rowView = listview.getChildAt(position);
rowView.setBackgroundResource(R.color.red);

这个对我有用。

谢谢。

于 2012-12-19T06:44:23.093 回答
1

notifyDataSetChanged()之后调用

于 2012-12-19T06:22:32.083 回答
0

嗨,我使用自定义适配器扩展了 ArrayAdapter 并像这样实现。可能这会帮助你

已使用此示例ListView

于 2012-12-19T06:18:08.247 回答