Android_关于子控件和父控件的事件响应问题
来源:互联网 发布:剑元上至 知乎 编辑:程序博客网 时间:2024/06/03 23:49
原文地址
http://blog.csdn.net/tianjf0514/article/details/7533154
当父控件中有子控件的时候,并且父控件和子控件都有事件处理(比如单击事件)。这时,点击子控件,父控件的单击事件就无效了。如下图:
比如一个LinearLayout里面有一个子控件TextView,但是TextView的大小没有LinearLayout大
①如果LinearLayout和TextView都设置了单击事件,那么
- 点击TextView区域的时候,触发的是TextView的事件,
- 点击TextView以外的区域的时候,还是触发的LinearLayout的事件。
②如果LinearLayout设置了单击事件,而TextView没有设置单击事件的话,那么
- 不管单击的是TextView区域,还是TextView以外的区域,都是触发的LinearLayout的单击事件
如果LinearLayout的大小和TextView一样的话,那么
①如果LinearLayout和TextView都设置了单击事件,那么
- 只有TextView的单击事件有效
②如果LinearLayout设置了单击事件,而TextView没有设置单击事件的话,那么
触发的是LinearLayout的单击事件
/***************************************
* 个人附加 *
***************************************/
顺便提一下父控件和子控件状态跟随
当父控件是布局而子控件是控件时,如果要设置点击效果,可以在父布局里面加上android:clickable="true" ,在子控件里面设置android:clickable="false",并设置状态跟随父布局android:duplicateParentState="true",至于效果,则随自己写吧
0 0
- Android_关于子控件和父控件的事件响应问题
- Android_关于子控件和父控件的事件响应问题
- (4.4.14.1)Android_关于子控件和父控件的事件响应问题
- 子控件抢占父控件事件响应
- 关于在自定义控件中事件不响应的问题
- 关于在自定义控件中事件不响应的问题
- 父布局与子布局控件的实现响应点击事件冲突问题。
- 事件拦截,父控件和子控件
- 关于动态控件的事件响应和控件的生命周期的理解(应用)
- duplicateParentState子控件响应父控件绘图状态而不响应点击事件
- 子控件不能响应点击事件
- 关于IOS7开始,靠左侧边的控件的事件响应问题
- 关于Android中ExpandableListView子项是Button控件而单击事件没有响应的问题
- hit-Testing 子视图超出父试图部分上的控件响应事件
- Android解决父控件拦截子控件手势滑动事件的问题
- ASP.NET中自定义控件无法响应事件的问题
- ASP.NET中自定义控件无法响应事件的问题
- C#控件无法响应单击事件的问题
- line 3: /usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi-gcc: No such file or directory
- 将博客搬至CSDN
- CSS权威指南学习笔记--Chapter3结构和层叠
- java的使用技巧(二)
- 计算机技术当前的主流技术及其社会需求的调查报告
- Android_关于子控件和父控件的事件响应问题
- project euler 63
- 闲话战国
- loadlibrary返回 NULL , 错误码值126
- AngularJs的简单理解和案例
- HNOI2013 数列
- POJ3258 二分与最小值最大化
- libevent事件通知
- Android Debug Bridge(adb)