我偶然發現了ListViews的一個奇怪問題。ListView顯示沒有反饋
在模擬器中,當按下某個項目進行選擇時,ListView不顯示任何反饋。我想我已經看到了這一點,但我不確定。我希望列表項被按下時被選中(較暗的背景),以便用戶可以看到他按下的是哪個項目。
我必須編碼嗎?
RG
看到評論後,我試過如下:
我創建了一個文件RES /顏色/ backgroundstate.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"
android:color="#888"/>
<item android:state_pressed="true"
android:color="#888"/>
<item android:color="#eee"/>
</selector>
然後我用這listitem.xml作爲背景顏色
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textColor="@color/helptextcolor"
android:background="@color/backgroundstate"
android:padding="10dp"
android:textSize="16sp" >
</TextView>
當我顯示ListView與
ArrayAdapter adapter=new ArrayAdapter<String>(this,R.layout.listitem,names);
LV.setAdapter(adapter);
LV.invalidate();
該程序崩潰。
有三個例外與此有關。但問題似乎是最後一個XMLPullParserException:
<item> tag needs a drawable.
現在呢?
我的ListItems是TextViews。或者更好地說,我使用佈局來表示項目,這是一個簡單的TextView,而ListView的ArrayAdapter指向該佈局。那麼,我如何突出顯示TextView? – Rene 2010-11-20 14:46:05
您可以將可繪製的州列表作爲背景添加到您的textview中。狀態列表背景的高亮功能不僅限於按鈕,實際上它適用於任何視圖。 – Jean 2010-11-20 15:06:07
啊,我明白了。聽起來有點矯枉過正,性能突破。我剛剛發現R.layout.simple_list_item_1完成了這項工作。但我不能使用它的顏色和字體大小。 – Rene 2010-11-20 15:44:35