zoukankan      html  css  js  c++  java
  • android selector失效的原因

    问题重现:

    使用selector,期望按下按钮时 Button 图片变色,代码如下:

        <Button
            android:id="@+id/btn_match"
            style="@style/DashboardButton"
            android:drawableTop="@drawable/btn_match"
            android:text="按我变色" />

    其中,selector 具体写在 btn_match.xml 中,控制各种 state 下按钮的应有的状态。

    但是实际运行时按钮并不变色。


    原因:

    首先,这个不是 pressed、selected、default 的顺序不对引起的问题;

    真正的原因是,在我的工程的 drawable 文件夹下有一个名为 btn_match.png 的图片,系统每次优先将 android:drawableTop="@drawable/btn_match" 中的 btn_match 解析为 btn_match.png,而非预期的 btn_match.xml。

    当你按住 Ctrl,将鼠标移至"@drawable/btn_match"时,会有2个提示语句:第一个是btn_match.png,第二个才是 btn_match.xml,系统优先选择btn_match.png,故没有变色效果。


    解决方法:

    删除 btn_match.png 或将其重命名即可。

  • 相关阅读:
    函数指针与变长参数列表
    Finding intersection and union of two sets.
    依赖注入
    可达性分析算法
    java 虚拟机栈
    Java 堆
    java虚拟机>>程序计数器
    Java方法区(Method Area)
    Java 运行时常量池
    java引用
  • 原文地址:https://www.cnblogs.com/lechance/p/4373292.html
Copyright © 2011-2022 走看看