- 为了突出显示所选项,您应该请求listView的焦点,并在UI线程中运行setSelection()。以下方法对我有效:
runOnUiThread(new Runnable() {
public void run() {
myList.requestFocus();
myList.setSelection(position);
}
});
2. 给一个项目应用特定的颜色。您可以使用自定义的listItem。
a. 为您的listView设置自定义的listItem:
ArrayAdapter<String> listAdapter = new ArrayAdapter<String>(this, R.layout.customizedlistitem,arrListView)
myList.setAdapter(listAdapter)
b. 在您的布局文件夹中,创建customizedlistitem.xml
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/customizedlistitem"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/customizedbackground"/>
在你的drawable文件夹中创建customizedbackground.xml,内容如下:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:state_pressed="false" android:drawable="@color/RED"></item>
<item android:state_pressed="true" android:drawable="@color/GREEN"></item>
<item android:drawable="@color/BLACK"></item>
</selector>
d. 确保在您的项目中定义了颜色RED、GREEN和BLACK(您可以在values文件夹下的color.xml中定义):
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="RED">#FF0000</color>
<color name="GREEN">#008000</color>
<color name="BLACK">#000000</color>
</resources>