ListView及其文本颜色

时间:2011-02-11 04:49:50

标签: android

我有CustomListView,即包含背景图像和TextView,

当选择一个项目时,我需要更改背景图像和字体颜色,目前我可以使用xml更改列表视图中所选行的背景,但我无法更改文本颜色。

默认情况下,单击listview中的项目时,我的文本颜色为黑色,我需要将文本颜色更改为白色。

我的customlistview使用以下布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent" 
    android:layout_height="29dp"
    android:id="@+id/appcategoryLinearLayout"
    android:background="@drawable/appcategorybg1"
    android:gravity="left|center_vertical"
    >
        <TextView
        android:gravity="left|center_vertical"
        android:text="fdsfsdfsdfdsfdsfdsf"
        android:paddingLeft="8dp"
        android:textSize="8dp"
        android:textColor="@color/black"
        android:id="@+id/appCategoryNameTextView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
</LinearLayout>

2 个答案:

答案 0 :(得分:0)

编写自己的ListAdapter并编写具有您定义的可视属性的自定义控件的唯一方法。

答案 1 :(得分:0)

我不确定这会对你有所帮助,但你可以做一些像这样的事情

将TextView变量用作全局

TextView t ;


lv.setOnItemClickListener(new OnItemClickListener()
    {
        public void onItemClick(AdapterView<?> parent, View v, int position, long id)
        {
                if(t != null)
                {
                    //reset the color to black
                }
                LinearLayout lay = (LinearLayout)v;
                t = lay.getChildAt(0);
                //now set text to bold
        }
    };