android:自定义文本选择器

标签 android colors selector textview

我想设计一个自定义的文本选择器,当用户单击 TextView 时它会更改文本颜色。但是出现以下错误:

java.lang.RuntimeException: 无法启动 Activity ComponentInfo{}: android.view.InflateException: Binary XML file line #55: Error inflating class

这是我所拥有的: 可绘制/text_selector.xml

    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
  <item android:state_enabled="false" 
        android:state_focused="true" 
        android:drawable="@color/black" /> 
  <item android:state_pressed="true" 
        android:drawable="@color/blue" /> 
  <item android:state_focused="true" 
        android:drawable="@color/black" /> 
</selector> 

布局/textview.xml

<TextView android:id = "@+id/last_page_button"
    android:text="@string/last_page_button_string" 
    android:gravity="center_horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:background="#ffffff"
    android:textColor = "@drawable/text_selector"
    android:layout_weight="1" />

值/color.xml

<resources> 
    <color name="white">#ffffffff</color> 
    <color name="black">#ff000000</color> 
    <color name="blue">#ffccddff</color>

最佳答案

您不能将 drawable 分配给 textColor。它必须是一种颜色。

<selector
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_selected="true"

        android:color="@color/color1" />
    <item
        android:color="@color/color2" />
</selector>

在你的 res 中创建一个文件夹 color ,将这个文件保存为 mycolor.xml 并将它分配给 textColor as @color/mycolor

关于android:自定义文本选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2791679/

相关文章:

android - 使用 Picasso 在后台加载图像时显示 "Loading..."图像

android - 如何在android studio中显示编译错误

Java - 更改使用 Graphics2D 创建的一些正方形的颜色

file - 如何使用vcglib保存颜色?

iphone - 我可以将 Objective-C 选择器放入结构中吗?

带有可选闭包的 Swift 选择器函数?

jQuery - 当单击列表中的按钮时切换()表单

android - 在所有模块上运行 android checkstyle

javascript - 无法让 Nativescript 插件工作 "nativescript-admob"

javascript - 如何在单击时将 html 颜色输入值设置为 div 颜色