【发布时间】:2017-01-30 17:50:11
【问题描述】:
我需要一种方法来更改所选项目的背景颜色。下面的代码仅在我第二次单击某个项目时更改背景颜色(蓝色)。因此,当我第一次单击某个项目时,它不起作用。
final SongAdapter songAdt = new SongAdapter(getApplicationContext(), songList);
lv.setAdapter(songAdt);
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Log.i(TAG, " executed");
view.setBackgroundColor(Color.BLUE);
}
}
);
我刚刚检查过(通过使用 Log.i 函数)代码执行了 2 次,但只有第二次更改了背景。为什么?
【问题讨论】:
-
您能否通过将整个代码提供给列表视图来详细说明问题?
-
很可能视图不会重绘。拥有完整的源代码将有助于了解为什么会发生这种情况。
-
我在上面的问题中添加了一些代码,你到底需要什么部分?谢谢:)
-
@jackgu1988 我在上面添加了更多代码:)
-
@OBX 我在上面添加了更多代码:)
标签: android android-layout listview