安卓如何检测用户是否一直按住按钮?

8

我需要能够判断用户何时按下按钮以及何时松开按钮。这与onClickListner和onLongClickListener不同。我该如何实现这样的功能?

例如,当我按下一个按钮时,它会启动计时器。(伪代码)

if ButtonIsBeingPressed
{
chronometer start(); //and keep going
}
else chronometer stop();
//or on release or something
}
1个回答

20

查看OnTouchListener,它包含按下和释放的MotionEvents:

view.setOnTouchListener(new OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        switch(event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            // Start
            break;
        case MotionEvent.ACTION_UP:
            // End
            break;
        }
        return false;
    }
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接