【问题标题】:how to disable one view of android layout so that click events do not occur?如何禁用 android 布局的一种视图以便不发生点击事件?
【发布时间】:2015-12-12 01:44:24
【问题描述】:

我有两个相对的布局。一个是主页,另一个是默认隐藏的滑块菜单。当我打开第二个布局时,它会出现在主布局上,但问题是。我在滑块菜单中有一些可点击的按钮。如果我单击该单击事件,那么如果按钮正好位于滑动视图按钮的后面,则主视图按钮也会发生单击事件。我怎样才能确保后面的视图被禁用?类似于 HTML 中的 z-index

【问题讨论】:

  • 你能贴一些代码吗?

标签: android android-layout android-relativelayout android-sliding


【解决方案1】:

如果我理解正确,您可以使用yourViewUnderneath.requestDisallowInterceptTouchEvent(true) 禁用下方的视图拦截触摸事件。如果位于顶部的视图是父视图的子视图,这将起作用。

你可以在这里阅读:https://developer.android.com/reference/android/view/ViewGroup.html#requestDisallowInterceptTouchEvent%28boolean%29

如果底层视图不是其上出现的视图的父级,那么您可以简单地使用yourViewUnderneath.setClickable(false)

【讨论】:

    【解决方案2】:

    如果第二个布局是一个滑块,我认为问题在于您在第二个布局上没有 ClickListener 的情况下单击某个点,然后,第一个布局管理点击。因此,您可以将第一个 View 的可见性设置为 GONE 或使所有布局可点击并管理点击的 View 的 id。

    【讨论】:

      猜你喜欢
      • 2013-04-28
      • 2012-03-17
      • 1970-01-01
      • 1970-01-01
      • 2014-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多