1

押されたときにlistItemの色を変更するために、listSelectorを使用しています。

エミュレーターと Android 4.1 デバイスではすべて問題なく表示されますが、Android 2.2 デバイスでは、代わりにリスト項目の色が変わり、選択した項目だけでなく、リスト全体 (すべての項目) が紫色になります。

私が使用する: android:listSelector="@drawable/purpulefocus" 押すと背景が紫色に変わります。

Android のバージョン間で動作が変更されたのでしょうか、それともデバイスに問題があるのでしょうか。この動作の変更の原因がわかりません。

Tnx。

<ListView
    android:id="@+id/lvRecepies1list"
    android:listSelector="@drawable/purpulefocus"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >
</ListView>
4

2 に答える 2

0

2.3以下では、セレクターがリスト項目の背景として設定されることを想定しています。したがって、基本的にはセレクターをリストに追加する必要があります。2.3以下で機能させるには、ListView行として使用するアイテムのルート要素に背景と同じ描画可能な参照を追加する必要があります。

于 2012-10-18T13:18:03.967 に答える
0

例のように「形状」を使用して解決策を見つけました:

<item android:state_focused="true">
<shape>
    <solid android:color="#66000000" />
</shape>
</item>

ここの例から: ListSelector はリスト全体に適用されます

于 2012-10-18T13:12:42.347 に答える