android:clickable="true"的怪异的用法

来源:互联网 发布:未来中国 是一群正知 编辑:程序博客网 时间:2024/04/30 03:24

这个属性,以前在做Android界面UI的时候,出现过两次坑!

(ViewGroup代表LinearLayout等各种布局控件,View代表TestView等各种控件)


1.比如ViewGroup_A在ViewGroup_B之上,点A的时候,B下面如果有button同时会被点击到并触发事件

解决方法:就是在ViewGroup_A的XMl属性下面添加android:clickable="true",反正当时也比较菜,然后当时根本没注意到这么个属性。

(当时比较蠢的做法,我们设定了一个标志位,看见A的时候,设置B不能点。额,这种做法只能说明我们见识太短)


2.TextView的background设置一个selector,点击TextView的时候,背景却没有变化!

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:state_pressed="true">        <shape>            <solid android:color="#40abdc" />            <corners android:radius="5dp" />        </shape>    </item>    <item>        <shape>            <solid android:color="#1298d6" />            <corners android:radius="5dp" />        </shape>    </item></selector>


当时自己是这么写的,本来以为TestView可能没这个属性,然后百度了一下,发现有人又在TestView的XML里面添加了一个android:clickable="true",然后就成功了。


目前我遇到这上面两种,难以知道要添加android:clickable="true"的情况,今天第二次遇到,所以把这个写下来。


大神看到了,请补充,谢谢。




0 0
原创粉丝点击