ListView中TextView的自定义选择器

时间:2012-11-16 11:11:35

标签: android android-listview textview

如何在Custom ListView中为TextView使用自定义textColor?我需要的是我的listview与深灰色背景。如果我选择任何一行。该行应变为白色,TextView Color应变为深灰色。任何人都可以给我片段或引导我一些很好的教程吗? 我试过这个。下面是我的ListView自定义行

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/list_selector" >

    <TextView
        android:id="@+id/rowListTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingBottom="10dp"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:text="@string/app_name"
        android:textColor="@color/list_item_text"
        android:textSize="10sp"
        android:textStyle="bold" />

</RelativeLayout>

这是来自res / color / folder

的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="@color/dark_gray"/>
    <item android:state_focused="true" android:color="@color/dark_gray"/>
    <item android:state_pressed="true" android:color="@color/dark_gray"/>
    <item android:color="@color/white"/>

</selector>

它不适合我。我可以将行颜色设置为白色,但我无法将文本颜色设置为灰色! 我是android的新手。帮助我。提前谢谢!

1 个答案:

答案 0 :(得分:0)

尝试使用textColor的颜色状态列表

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:color="#fff"/>
    <item android:state_activated="true" android:color="#fff"/>
    <item android:color="#000" />
</selector>

Android guide未提及state_activated属性,但它适用于我。