32

私のListViewItemが強調表示されたら、テキストを白くしたい。これをどのように定義できますか?

<selector xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:state_focused="true" android:color="@color/testcolor1"/>
   <item android:state_pressed="true" android:state_enabled="false" android:color="@color/testcolor2" />
   <item android:state_enabled="false" android:color="@color/testcolor3" />
   <item android:color="@color/testcolor5"/>
 </selector>
4

3 に答える 3

69

ファイル res/drawable/text_color.xml を作成します。

 <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_focused="true" android:state_pressed="false" android:color="#ffffff" />
    <item android:state_focused="true" android:state_pressed="true" android:color="#ffffff" />
    <item android:state_focused="false" android:state_pressed="true" android:color="#ffffff" />
    <item android:color="#000000" />
</selector>

次に、リスト ビュー アイテムのテキストの色として@drawable/text_colorfrom xml (またはfrom code) を使用します。R.drawable.text_color

于 2010-09-30T06:36:04.547 に答える
3

他の人が上で述べたことに加えて、以下の URL から抜粋した 1 つのポイントを強調したいと思います。

https://developer.android.com/reference/android/content/res/ColorStateList.html

注: 状態仕様のリストは、XML ファイルに表示される順序で照合されます。このため、より具体的な項目をファイルの前に配置する必要があります。状態仕様のない項目は、任意の状態セットに一致すると見なされ、通常、デフォルトとして使用される最終的な項目として役立ちます。

セレクタータグの下部に向かってより広い条件を設定することが重要です。

于 2016-09-19T23:20:49.627 に答える