【问题标题】:Does making parent clickable make all child element clickable as well?使父元素可点击是否也会使所有子元素也可点击?
【发布时间】:2011-12-29 10:04:31
【问题描述】:

有一个LinearLayout 有很多子元素。当用户触摸这些子元素中的任何一个时,将调用相同的方法。为了不为每个元素实现相同的onClickListener,我为父LinearLayout ONLY 实现了onClickListener

现在,当我单击父布局边界内的任意位置时,将调用所需的方法,就像我为所有子元素实现了侦听器一样。

问:我是否可以相信,每当我为父级实现 onClickListener 时,它的所有子元素都会对点击事件做出反应?

问:如果任何子元素都有自己的onClickListener,会发生什么情况?是否会发生碰撞或单击该元素只会触发其自己的单击事件?

【问题讨论】:

  • 按下的布局应该传播到它的所有子级

标签: android onclick clickable android-linearlayout


【解决方案1】:

您用第二个问题回答了第一个问题。 clickEvent 将被传递到布局层次结构中的最低子元素。如果这个元素没有 onClick 行为,它将把事件向上传递给它的父元素,直到事件被处理。

因此,您可以将 LinearLayout 视为您的 onClick 行为的一个块。 如果您在布局内创建另一个可点击元素,请确保将其设置得足够大,以减少用户错过正确项目的机会。

【讨论】:

    猜你喜欢
    • 2018-07-13
    • 1970-01-01
    • 2016-12-19
    • 2016-06-08
    • 2017-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多