0

私はAndroid開発の面ではほとんど初心者であり、ほとんどのホロアプリで見られるように、タッチでリストビューアイテムを強調表示しようとしていますが、それは私にはうまくいきません。

私のxmlコードはここにあります

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
android:orientation="vertical"
android:background="#ffdddddd"
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent"
 xmlns:android="http://schemas.android.com/apk/res/android">

<ListView android:id="@android:id/list" 
    android:scrollX="10.0dip" 
    android:background="#DDDDDD" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="10.0dip"
    android:layout_marginTop="10.0dip" 
    android:layout_marginBottom="10.0dip"
    android:stackFromBottom="true"
    android:soundEffectsEnabled="true"
    android:listSelector="#0eBFE9"
 />

問題は、listViewの項目が選択されたときに強調表示されないことです。それを成し遂げる唯一の方法は使用することです

android:drawSelectorOnTop = "true"

ただし、選択中にテキストが非表示になります。このアプリは、役立つ場合はv4.0以降のみを対象としています。

4

1 に答える 1

1

ListViewのリスト項目を強調表示するには、セレクターの概念を使用する必要があります。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
 <item 
 android:state_selected="false"
    android:state_pressed="false" 
    android:drawable="@color/normal" />
<item android:state_pressed="true" 
    android:drawable="@color/itemselectedcolor" />
<item android:state_selected="true"
 android:state_pressed="false" 
    android:drawable="@color/itemselectedcolor" />
</selector> 

詳細については、Androidブログをご覧ください。リストアイテムの親レイアウトでセレクターを使用する方法がわかります

http://amitandroid.blogspot.in/2013/03/android-listview-with-alternate-list.html

ありがとう、

于 2013-03-07T09:45:24.210 に答える