【发布时间】:2013-02-27 15:12:53
【问题描述】:
我正在使用 ListFrament,我想突出显示选定的行。
我的选择器:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@color/gold" />
<item
android:state_selected="true"
android:drawable="@color/plum" />
<item
android:drawable="@color/medium_green" />
</selector>
我的 ListFragment 中的代码: 在 onCreateActivity 中:
this.getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);
点击:
@Override
public void onListItemClick(ListView list, View v, int position, long id) {
super.onListItemClick(list, v, position, id);
String tag = this.getTag();
Log.d(TAG, "id, position " + id + " " + position);
list.setSelection(position);
}
不幸的是,这不起作用 - 单击行时它只会闪烁“金色”...我希望所选行保持突出显示...
提前感谢您的回答,
【问题讨论】:
-
您必须通过适配器来完成。适配器负责渲染列表项。