【问题标题】:Click on ImageView without onClickListener在没有 onClickListener 的情况下单击 ImageView
【发布时间】:2018-03-21 21:42:42
【问题描述】:

是否有可能使用处理程序检测对 ImageView 的点击(例如,查看 100 毫秒)?我的意思是是否有 ImageView/View 的方法,当有人将手指放在 ImageView 上时,它会给我一个布尔值?

谢谢!

编辑:对于所有有兴趣深入了解的人: https://www.youtube.com/watch?v=SYoN-OvdZ3M&t=139s 那是关于该主题的 4 个视频。在此之后,我的所有问题都得到了解答。

【问题讨论】:

    标签: android imageview onclicklistener handler


    【解决方案1】:

    如果要检测用户的手指是否在imageview上,可以使用setOnTouchListener

    imageview.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View view, MotionEvent e) {
            if (e.getActionMasked() == MotionEvent.ACTION_DOWN) {
                // This is a touch action.
            } 
        }
    

    其他动作包括 ACTION_UP、ACTION_MOVE 等。根据您的需要,您可以通过选择正确的触摸事件来触发点击动作。

    【讨论】:

    • 非常感谢! onTouchListener 为我的项目提供了所有可能性! :-)
    【解决方案2】:

    不确定你的意思。如果您想知道视图何时被触摸,您可以使用 onTouchListener。

    【讨论】:

    • 非常感谢! onTouchListener 为我的项目提供了所有可能性! :-)
    【解决方案3】:

    是的,它叫做 onClickListerner 你试过吗?太棒了。

    imageview.setOnClickListener(new View.OnClickListener() { @覆盖 公共无效 onClick(查看 v){ } });

    setOnTouchListener()

    【讨论】:

    • 是的,我回答了。如果您想知道如何在没有onClickListener 的情况下单击图像,我告诉您的另一种方式是setOnTouchListener,它将为您提供单击事件。但是,如果您想在没有任何类型的侦听器的情况下处理单击操作……那是不可能的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-28
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多