【问题标题】:How to detect click on empty space?如何检测点击空白空间?
【发布时间】:2020-01-21 19:13:18
【问题描述】:

我正在尝试创建一个活动,让我可以放置和移动imageviews。要创建新的imageviews,我想点击一个空白空间。但是,我看不到如何实现它。我没有可以将OnClickListener 设置为的特定对象。除非那时我将根布局设置为OnClickListener,但是我应该如何检查它是否为空白空间?

简而言之,我如何检测用户何时触摸了空白区域?

【问题讨论】:

    标签: java android android-layout imageview touch


    【解决方案1】:

    您应该在包含您的图像(持有人)的视图上设置一个侦听器。如果它是 rootView - 那完全没问题。 问题是 onClick 将与该视图直接交互,这基本上意味着如果您单击其他视图您的持有人(孩子/项目重叠持有人),什么都不会发生。

    您可能需要通过调用 imageView.setClickable(true) 来设置您的图像视图可点击,并且您不会得到 rootView 的错误点击。相关:Android root view onClickListener is always triggered

    所以总结一下:你不应该自己检查空白,系统会为你做的

    【讨论】:

    • 谢谢!但我有一个问题。当我触摸imageview 进行拖动时,它也会触发根布局的OnClickListener,那么如何检查我没有点击imageview?如果我不检查,当我尝试拖动已经存在的imageview 时,它将创建一个新的imageview
    • 更新了答案
    猜你喜欢
    • 2012-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-16
    • 1970-01-01
    • 2021-06-18
    • 1970-01-01
    相关资源
    最近更新 更多