写自定义布局的时候,如果有两个布局存在:一个在下面我们设置为A,一个在上面我们设置为B。
我们现在操作B,但是A还能接受到焦点的触发,我们想只让B有焦点,让A失去焦点。
解决办法是B.setOnClickListener(null);
B.setOnTouchListener(null);
这样A就无法获得焦点了。
还有一种方法是B.setOnTouchListener(new OnTouchListener(
@Override
public boolean onTouch(View v, MotionEvent event) {
return true;
}
));
OnTouch监听事件返回true,就可以避免别的控件获得焦点了。