android中怎么实现双击退出,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
利用线程延时实现android双击退出
privatestaticbooleanmBackKeyPressed=false;//记录是否有首次按键
@Override
publicvoidonBackPressed(){
if(!mBackKeyPressed){
Toast.makeText(this,"再按一次退出程序",Toast.LENGTH_SHORT).show();
mBackKeyPressed=true;
newTimer().schedule(newTimerTask(){//延时两秒,如果超出则擦错第一次按键记录
@Override
publicvoidrun(){
mBackKeyPressed=false;
}
},2000);
}
else{//退出程序
this.finish();
//System.exit(0);
}
}
通过mBackKeyPressed来记录是否有首次按返回键的记录,如果不存在首次按键记录,则Toast提示,并记录首次按键记录,并启动线程在2秒后擦除该按键记录。如果在线程海内擦除mBackKeyPressed时又按下返回键,则执行else里面的语句退出程序。
通过计算时间差实现android双击退出
privatelongmPressedTime=0;
@Override
publicvoidonBackPressed(){
longmNowTime=System.currentTimeMillis();//获取第一次按键时间
if((mNowTime-mPressedTime)>2000){//比较两次按键时间差
Toast.makeText(this,"再按一次退出程序",Toast.LENGTH_SHORT).show();
mPressedTime=mNowTime;
}
else{//退出程序
this.finish();
System.exit(0);
}
}
关于android中怎么实现双击退出问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注天达云行业资讯频道了解更多相关知识。