gpt4 book ai didi

android - LongClick 事件发生得太快。如何增加触发它所需的点击时间?

转载 作者:IT老高 更新时间:2023-10-28 23:20:18 26 4
gpt4 key购买 nike

在我正在开发的应用程序中,我要求用户必须在某个操作发生之前单击并按住组件一段时间。

我目前正在使用OnLongClickListener来监听longclick,但是我发现触发OnLongClick事件的点击时长太短了。

例如,假设 LongClick 事件在单击 400 毫秒后触发,但我希望用户必须在事件触发之前单击并按住 1200 毫秒。

有什么方法可以将 LongClick 事件配置为需要更长的点击时间?
或者是否有其他构造可以让我听到更长的点击?

最佳答案

onLongClick 事件无法更改定时器,由android自己管理。

可以使用 .setOnTouchListener()。

然后在 MotionEvent 为 ACTION_DOWN 时注册。
注意变量中的当前时间。
然后当一个带有 ACTION_UP 的 MotionEvent 被注册并且 current_time - actionDown 时间 > 1200 毫秒时,然后做一些事情。

差不多:

Button button = new Button();
long then = 0;
button.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
then = (Long) System.currentTimeMillis();
}
else if(event.getAction() == MotionEvent.ACTION_UP){
if(((Long) System.currentTimeMillis() - then) > 1200){
return true;
}
}
return false;
}
})

关于android - LongClick 事件发生得太快。如何增加触发它所需的点击时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7934245/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com