如何在持续点击一段时间后为按钮添加onClickListener?

How to add onClickListener for a button after keep clicking on it for a while?

大家好,我是初学者 android 开发人员,我有一个问题尚未找到答案。例如,我想在持续点击按钮 1.5 秒后为按钮添加一个 onClickListener?

Originally Answered

您无法为 onLongClickListener() 定义自定义持续时间 相反,您应该使用 onTouchListener 并查看用户单击按钮的时间 当那个时间超过你的限制时,你的代码就像这样

Button your_button = findViewById(R.id.your_button_ID);
long time = 0;
    button.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if(event.getAction() == MotionEvent.ACTION_DOWN){
                time = (Long) System.currentTimeMillis();
            }
            else if(event.getAction() == MotionEvent.ACTION_UP){
                if(((Long) System.currentTimeMillis() - time) > 1500){
 // if time>1.5 seconds do your code here

                    return true;
                }
            }
            return false;
        }
    });