2 d276031034 d276031034 于 2017.01.11 16:49 提问

relativelayout点击事件

relativelayout的子布局含有EditText,relativelayout设置onClick事件,只要点击到editText
位置,点击事件无效,给editText设置enabled,facusable,clickable,均不好使。请问
怎么设置才能点击relativelayout整个布局任意地方均触发relativelayout的点击事件

6个回答

qq_27783551
qq_27783551   2017.01.11 17:42
重写relativelayout下面方法返回true 
    @Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
    return true;
}
ligen52
ligen52   2017.01.12 14:09

editText.setOnClickListener(new OnClickListener(){

relativeLayout.performClick();
});

Kelley_cfy
Kelley_cfy   2017.01.12 14:14

relativelayout的节点设置android:descendantFocusability="beforeDescendants"

bluky_di
bluky_di   2017.01.13 09:26

以前遇到类似的问题,原因是子控件先拿走了焦点,所以在RelativeLayout属性设置android:descendantFocusability = beforeDescendants。意思是父容器会比其子控件率先获得焦点。如果不行的话再设置子控件focusable、clickable为false。
如果有用的话,望采纳!有不对的地方,也希望能指正!

d276031034
d276031034 回复风晴03: 不清楚
11 个月之前 回复
d276031034
d276031034 其实这个before没有block好用,具体我也清楚为什么
11 个月之前 回复
qq_32138419
qq_32138419   2017.01.17 11:59

你的布局就有不合理 如果你想点击任何地方都有监听事件,那editText基本无效了。

sxt_zls
sxt_zls   2017.01.11 16:59

那你添加 editText是想做什么呀

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!