Android 检测用户一段时间无操作

来源:互联网 发布:淘宝客怎么建个工作室 编辑:程序博客网 时间:2024/06/07 03:35
private Handler mHandler = new Handler(){
    @Override
    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        switch (msg.what){
            case hide1: {
                button.setVisibility(View.GONE);
                break;
            }
            case hide2:
                break;
        }
    }
};
private void restTime(){
    if(mHandler.hasMessages(hide1)||mHandler.hasMessages(hide2)){
        mHandler.removeMessages(hide1);
        mHandler.removeMessages(hide2);
    }
    Message msg = mHandler.obtainMessage(hide1);
    mHandler.sendMessageDelayed(msg,3*1000);
}


//使用键盘或者遥控器用dispatchKeyEvent
@Override
public boolean dispatchKeyEvent(KeyEvent event) {


    switch (event.getAction()){
        case KeyEvent.ACTION_DOWN:{
            mHandler.removeMessages(hide1);
        }
        case KeyEvent.ACTION_UP:{
            restTime();
            break;
        }


    }
    return super.onTouchEvent(event);
}






//使用触摸用onTouchEvent
@Override
public boolean onTouchEvent(MotionEvent event) {
    switch (event.getAction()){
        case MotionEvent.ACTION_DOWN:{
            mHandler.removeMessages(hide1);
        }
        case MotionEvent.ACTION_UP:{
            restTime();
            break;
        }


    }
    return super.onTouchEvent(event);
}



阅读全文
0 0