【问题标题】:Android : Only one button clickable at onceAndroid:一次只能点击一个按钮
【发布时间】:2014-04-27 15:30:04
【问题描述】:

在开发 Android 应用时,我有一个带有一些按钮的活动。我希望在用户立即将手指放在屏幕上时启动 onClickListener 操作,这样他就无法同时单击两个按钮。

我在 iOS 中使用touchDown 事件而不是默认的TouchUpInside. 来做到这一点

我完全不知道如何在 Android 中做到这一点......

安卓代码:

button.setOnClickListener(clicked);

[...]


View.OnClickListener clicked = new View.OnClickListener() {
        public void onClick(View v) {

//Cool stuff there

}
}

感谢您的帮助!

【问题讨论】:

    标签: android events button onclick


    【解决方案1】:

    您正在寻找的是使用OnTouchListener 而不是 OnClickListener。这将允许您在第一次触摸按钮时做出反应,并停止对其他按钮触摸做出反应,直到再次停止第一次触摸。

    【讨论】:

    • 谢谢!由于某些按钮不应该是可点击的,因此我将代码放在了 if(v.isClickable()) 条件下的 OnTouch(view v, motion m) 下。
    【解决方案2】:

    您可以在开始单击时禁用其他按钮,并在完成后重新启用它们。

    默认情况下,按钮点击将在同一个线程上处理,因此即使您不禁用它们,它们的操作也不会并行完成。

    【讨论】:

    • 我试过了,但是当你松开手指时 onClick 事件就会开始,但这对我不起作用。 @FD_ 解决方案工作正常。还是谢谢你!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多