4

こんにちは、複数のアイテムが動的に追加されるリストビューを使用しています..リストアイテムのテキストの色を変更したい

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

    <ImageView android:id="@+id/icon" android:layout_width="72px"
        android:layout_height="wrap_content"
                android:layout_marginTop="5px" />

    <TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent" 
                android:layout_height="wrap_content"
        android:orientation="vertical" 
                android:paddingTop="5px" 
                android:paddingBottom="5px">

        <TextView android:id="@+id/item1" android:layout_width="match_parent"
            android:layout_height="wrap_content" 
                         android:textAppearance="?android:attr/textAppearanceMedium" />

        <TextView android:id="@+id/item2" android:layout_width="match_parent"
            android:layout_height="wrap_content" 
                       android:textAppearance="?android:attr/textAppearanceSmall"
            android:paddingTop="30px" />
            <View
    android:layout_width="fill_parent"
    android:layout_height="1dp"
    android:background="@android:color/darker_gray"/>

    </TwoLineListItem>

</LinearLayout>

私は2linelistIemを使用しています

4

2 に答える 2

1

私が書いて使用したコードは次のとおりです。他のすべての状態で Android スタイルを保持します。透明な状態を目的の色でオーバーレイするだけです。

カスタム背景付きのリスト ビュー用のレイヤ リスト ドローアブル

私の質問でわかるように、フォーカス状態に小さなバグがありますが、それでも私が今まで見た中で最高の解決策です:D

于 2012-06-30T14:41:24.410 に答える
1

このタイプの手法を使用して、色を動的に変更します。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_focused="true" android:drawable="@color/black" /> <!-- focused -->
    <item android:state_focused="true" android:state_pressed="true" android:drawable="@color/black" /> <!-- focused and pressed-->
    <item android:state_pressed="true" android:drawable="@color/green" /> <!-- pressed -->
    <item android:drawable="@color/black" /> <!-- default -->
</selector> 
于 2012-06-30T12:36:02.247 に答える