关于控件隐藏掉,但是交互还是存在的问题

有两个控件A和B, 是重叠的位置,
当两个都显示的时候,点击触发的是B,这个正常的,
但是隐藏掉B的时候(setVisible(false)),这时B是不可见的,但是还是点击不到A。

请问这个问题如何解决?

另外编辑器里,当某个控件设为隐藏的时候,同样的情况是,隐藏的还是被选中了

确实存在这个问题,也很头疼

setEnable函数是隐藏+屏蔽触摸。
有点反常人。所以我在setvisible函数里面顺便调用了下setenable

楼主,你光setvisible是不行的,隐藏了还是可以点击,必须setTouchenble(false)才行

楼上说用setEnabled(false),setTouchEnabled(false)试过吗,这加到setVisible(false)后也是无效的

隐藏和接受事件现在是平级的方法,需要自己同时手动调用了。

— Begin quote from ____

引用第6楼hanrea于2013-11-25 10:48发表的 回 楼主() 的帖子 :

— End quote

隐藏和接受事件现在是平级的方法,需要自己同时手动调用了。 http://www.cocoachina.com/bbs/job.php?action=topost&tid=158613&pid=853992

这个同时手动调用是如何调用? 现在两个层只要在同个位置,就是互相影响

现在问题时,就算把上层的位置移到边上,但弹出来的还会影响下层

我的意思是一个控件如果需要不显示且不需接受事件,那么就要同时setvisable和settouchenable。这也是你B控件不显示了还把事件给拦截了。

— Begin quote from ____

引用第9楼hanrea于2013-11-26 18:39发表的 回 8楼(infern0) 的帖子 :
我的意思是一个控件如果需要不显示且不需接受事件,那么就要同时setvisable和settouchenable。这也是你B控件不显示了还把事件给拦截了。 http://www.cocoachina.com/bbs/job.php?action=topost&tid=158613&pid=854597

— End quote

对层使用settouchenable也不生效啊,不会对层内的控件产生屏蔽。现在就是想要一个可以关闭层内各种响应的功能

layer4:setVisible(true)
layer4:setEnabled(true)

这两个函数同时设置

路过:7::7::7:

不想触摸调用setTouchEnabled
不想看到调用setVisible
不要随意调用setEnabled,看起来很方便,但是它会遍历所有的子节点