【发布时间】:2011-06-11 08:43:59
【问题描述】:
这让我很困惑:
据我所知,带有 setVisibility(View.GONE); 的视图不应再接收任何触摸或点击事件。 我的布局有两部分,它们将可见或消失,因此一次只有其中一个可见和可用,但 View.GONE 并不能解决问题。 正如预期的那样,我看不到 GONE 视图,但它仍然对 onClick 做出反应(并消耗其他视图应该获取的事件)。
你能帮帮我吗?
可能感兴趣: 当我开始我的项目时,一个视图已经消失,另一个可见。这次它会按预期工作(GONE 视图基本上被忽略),但在通过代码设置 View.GONE 后它将停止工作。
【问题讨论】:
-
这是否在调用 View.GONE 后立即发生?只在有限的时间内?这可能与 UI 更改不会立即生效有关。
-
我们需要更多信息。尝试使用
hierarchyviewer工具在运行时检查视图层次结构的状态。这将让您在调试视图问题时查看可见性状态等等。 -
谢谢。这在调用 View.GONE 后立即发生。 hierarchyviewer 工具说视图已经消失,但它仍然在点击。我的平台是 cyanogenmod 2.2(但我希望这仍然是我的代码中的一个问题:D)
-
没有动画我也有同样的问题。即使将 ViewGroup 中的每个元素都设置为 GONE,我仍然可以选择 GONE EditText 的内容并获取键盘。
-
View.GONE 后,布局元素接收 onClick() 事件。这有动画视图和消失。如何阻止这个?
标签: android view onclick visibility