back(返回)键总结

对于一般的android手机,都提供了四个(目前主流三个)按键。这几个按键中,back(返回)键用得比较多,对back键出发的事件一般是通过重写onKeyDown(int keyCode, KeyEvent event)这个方法实现的。
1.按下back键默认是退出当前activity;
2.连按两次退出,这个是目前用的比较多的一个功能了,它的实现原理:在第一次触发onKeyDown事件,设置一个定时器,如果在指定时间里,没有再次触发该事件,泽清除效果,代码如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
代码
@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if(keyCode == KeyEvent.KEYCODE_BACK){
            exit2Click() ;
        }
        return false;
    }
    public void exit2Click() {
        System.out.println(isExit);
        Timer timer = new Timer() ;
        if(isExit == false){
            Toast.makeText(this, "再按一次退出", 1000).show() ;
            isExit = true ;
            timer.schedule(new TimerTask() {
                @Override
                public void run() {
                    isExit = false ;
                }
            }, 5000) ;
        }else{
            finish() ;
        }
    }

3.自定义的view中按下back键:一般来说,android默认的焦点在activity上,如果要在自定义view中按下返回键,则需要将焦点设置在这个view上;

posted @ 2013-07-11 15:54  skyyhu  阅读(1286)  评论(0编辑  收藏  举报