【发布时间】:2014-01-13 11:50:06
【问题描述】:
我的应用中有四个ImageButtons。
三个较小的按钮可以显示或“隐藏”在较大的按钮下方。我使用旋转和翻译动画隐藏按钮。
问题是:
无论是否显示较小的按钮,OnClickListener 的 onClick 方法总是会被触发。
我的意思是,当较小的按钮被“隐藏”时,触摸屏幕上的位置,其中一个较小的按钮在显示时所在的位置,会触发 onClick 方法。
在决定是否应该触发onClick 方法时,Android 操作系统似乎没有考虑按钮的实际位置。
我该如何解决这个问题?
我希望onClick 方法仅在我的手指下方有按钮时被调用。
编辑:
所有建议的解决方法都依赖于隐藏按钮。这根本没有帮助。 onClick 方法也被调用 INVISIBLE 和 GONE 按钮。我在调试器中检查了这个。
【问题讨论】:
-
可能是参考问题..您的按钮在点击时可能没有得到正确的参考。
-
在onClick中添加条件
if(view.isShown()){// perform opertaions} -
@AndroidHacker 我不确定你在说什么。你愿意详细说明一下吗?
-
@Sunny 这无济于事,因为该按钮已显示(只是移动到其他按钮下方)。
-
即您可能没有在点击时获得视图。如果您设法在此处发布代码,我可以更具体地说明这一点
标签: android onclicklistener imagebutton