【问题标题】:Android ListView text color changeAndroid ListView 文字颜色变化
【发布时间】:2011-07-20 09:30:28
【问题描述】:

我正在使用列表视图,并尝试实现期望的外观。长篇大论 - 我想在按下项目时更改列表项文本查看颜色。 textView 的默认文本颜色为白色,当我按下 listView 中的项目时,文本颜色会自动变为黑色。这是默认设置,效果很好。但是当我在文本视图中设置颜色时,例如在红色中,当按下列表视图中的项目时什么也不会发生。我尝试为文本视图设置颜色选择器,但它不起作用(即使我设置了 duplicateParentState=true)

当用户按下项目时,我只想要一些默认的文本颜色和不同的文本颜色。

谢谢帮助。

【问题讨论】:

    标签: android listview text colors


    【解决方案1】:

    将此文件放在 res/color 文件夹中 color_selector.xml

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_focused="true" android:state_pressed="false"
            android:color="@color/skyblue" />
        <item android:state_focused="true" android:state_pressed="true"
            android:color="@color/white" />
        <item android:state_focused="false" android:state_pressed="true"
            android:color="@color/white" />
        <item android:color="@color/skyblue" />
    
    </selector>
    

    现在在你的 Textview 的 textcolor 属性中设置这个选择器 在“values”文件夹中准备一个 color.xml

    颜色.xml

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
            <color name="white">#ffffffff</color> 
            <color name="blue">#39abdf</color>
    </resources>
    

    【讨论】:

      【解决方案2】:

      您必须覆盖 baseadapter。这并不难。这将允许您定位每行中的每个元素,甚至允许单击每行上的按钮等。

      这是一个链接。我知道还有更多。如果我再次遇到它们,我会发布它们。

      Android: ListView elements with multiple clickable buttons

      Android : BaseAdapter how to?

      【讨论】:

        【解决方案3】:

        您可以覆盖 onItemClick() 事件并使用方法中提供给您的视图。使用它,您可以为每个文本视图调用 View.findViewById(R.id.textview) 来更改它们的字体和字体颜色。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-03-13
          • 1970-01-01
          • 2011-05-30
          • 2022-01-09
          • 1970-01-01
          • 1970-01-01
          • 2013-08-15
          相关资源
          最近更新 更多