Android检测您何时按住按钮

Posted

技术标签:

【中文标题】Android检测您何时按住按钮【英文标题】:Android to detect when you are holding down a button 【发布时间】:2012-07-27 15:46:22 【问题描述】:

我需要能够判断用户何时按住按钮以及何时松开。这与 onClickListener 和 onLongClickListener 不同。我将如何去做这样的事情?

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

if ButtonIsBeingPressed

chronometer start(); //and keep going

else chronometer stop();
//or on release or something

【问题讨论】:

【参考方案1】:

查看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;
    
);

【讨论】:

以上是关于Android检测您何时按住按钮的主要内容,如果未能解决你的问题,请参考以下文章

Unity3D:如何检测按钮何时被按住和释放[重复]

您如何检测 iBeacon 发射器何时关闭?安卓

如何检测 VideoView 何时开始播放(Android)?

Android检测webview URL更改

如何按住浮动按钮并将其移动到 android 屏幕上的任何位置?

检测点击android后退按钮以关闭键盘