Androidをダブルクリックして戻るキーを押して終了
1392 ワード
Androidダブルクリック終了プログラムは開発でよく用いられ,戻りキー動作を傍受することで対応する動作をトリガする.
具体的な考え方:
Activityではボタン動作(onKeyDown,onKeyUp)を傍受し,2回のクリック時の時間差でユーザが終了ボタンを連続的にクリックしたか否かを判断し,対応する操作を実行する.
onKeyUp
onKeyDown
具体的な考え方:
Activityではボタン動作(onKeyDown,onKeyUp)を傍受し,2回のクリック時の時間差でユーザが終了ボタンを連続的にクリックしたか否かを判断し,対応する操作を実行する.
onKeyUp
//
private long firstTime=0;
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
switch (keyCode){
case KeyEvent.KEYCODE_BACK:
long secondTime=System.currentTimeMillis();
if(secondTime-firstTime>2000){
Toast.makeText(MainActivity.this," --->onKeyUp",Toast.LENGTH_SHORT).show();
firstTime=secondTime;
return true;
}else{
System.exit(0);
}
break;
}
return super.onKeyUp(keyCode, event);
}
onKeyDown
//
private long firstTime=0;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode==KeyEvent.KEYCODE_BACK && event.getAction()==KeyEvent.ACTION_DOWN){
if (System.currentTimeMillis()-firstTime>2000){
Toast.makeText(MainActivity.this," --->onKeyDown",Toast.LENGTH_SHORT).show();
firstTime=System.currentTimeMillis();
}else{
finish();
System.exit(0);
}
return true;
}
return super.onKeyDown(keyCode, event);
}