android怎样判断用户5秒内无操作?

 我来答
QQMSD8
推荐于2019-08-11 · 知道合伙人软件行家
QQMSD8
知道合伙人软件行家
采纳数:6788 获赞数:13239
没有做不到,只有想不到,帮助别人的同时也是对自己的提升

向TA提问 私信TA
展开全部
可以通过Handler发送延迟消息来实现判断有无操作,实现原理就是,给Activity注册OnTouch事件,当用户触摸屏幕,手指离开的时候发送一个延迟消息。
以下为实现步骤及代码:
1.创建Handler实例
Handler handler = new Handler(){
public void handlerMessage(Message msg){

}

};

2.创建一个Runnable
private Runnable runnable = new Runnable() {
@Override
public void run() {
//用户5秒没操作了
}
};

3.给Activity注册Touch事件
public boolean onTouchEvent(android.view.MotionEvent event) {
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:{ //手指下来的时候,取消之前绑定的Runnable
handler.removeCallbacks(runnable);
break;
}
case MotionEvent.ACTION_UP:{ //手指离开屏幕,发送延迟消息 ,5秒后执行
handler.sendEmptyMessageDelayed(0, 1000 * 5);
break;
}
}
return super.onTouchEvent(event);
};
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式