안드로이드 앱 Back키 두번눌러 종료하기

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
private boolean mPressFirstBackKey = false; // Back의 상태값을 저장하기 위한 변수
private Timer timer;
public void onBackPressed (){
if(mPressFirstBackKey == false) { // Back 키가 첫번째로 눌린 경우
Toast.makeText(this, "뒤로 버튼을 한번 더 누르면 종료합니다.", Toast.LENGTH_LONG).show();
mPressFirstBackKey = true;
//------------------------------------------------------------------
//Back키가 2초내에 두번 눌렸는지 감지
TimerTask second = new TimerTask() {
@Override
public void run() {
timer.cancel();
timer = null;
mPressFirstBackKey = false;
}
};
if(timer != null){
timer.cancel();
timer = null;
}
timer = new Timer();
timer.schedule(second, 2000);
}else
super.onBackPressed();
}
private boolean mPressFirstBackKey = false; // Back의 상태값을 저장하기 위한 변수 private Timer timer; public void onBackPressed (){ if(mPressFirstBackKey == false) { // Back 키가 첫번째로 눌린 경우 Toast.makeText(this, "뒤로 버튼을 한번 더 누르면 종료합니다.", Toast.LENGTH_LONG).show(); mPressFirstBackKey = true; //------------------------------------------------------------------ //Back키가 2초내에 두번 눌렸는지 감지 TimerTask second = new TimerTask() { @Override public void run() { timer.cancel(); timer = null; mPressFirstBackKey = false; } }; if(timer != null){ timer.cancel(); timer = null; } timer = new Timer(); timer.schedule(second, 2000); }else super.onBackPressed(); }
private boolean mPressFirstBackKey = false;		 // Back의 상태값을 저장하기 위한 변수
private Timer timer;
public void onBackPressed (){
	if(mPressFirstBackKey == false) { // Back 키가 첫번째로 눌린 경우
		Toast.makeText(this, "뒤로 버튼을 한번 더 누르면 종료합니다.", Toast.LENGTH_LONG).show();
		mPressFirstBackKey = true;
		//------------------------------------------------------------------
		//Back키가 2초내에 두번 눌렸는지 감지
		TimerTask second = new TimerTask() {
			@Override
			public void run() {
				timer.cancel();
				timer = null;
				mPressFirstBackKey = false;
			}
		};
		if(timer != null){
			timer.cancel();
			timer = null;
		}
		timer = new Timer();
		timer.schedule(second, 2000);
	}else 
		super.onBackPressed();
}

안드로이드 앱중에 원기 날씨가 뒤로가기 두번 연달아 누르면 종료되고 한번 누르면 메세지만 보여주는데
그게 괜찮은 방식 같아서 적용해봄 그리고 소스 정리함.


Comments

“안드로이드 앱 Back키 두번눌러 종료하기”에 대한 2개의 응답

  1. 작은악마 아바타
    작은악마

    정보 잘 봤습니다. 많은 도움 될거 같아요. ^^ 감사합니다.
    그런데 죄송한데, 소스에 대해 좀더 자세한 설명 해주실 수 있나요? 부탁드립니다.

    1. Linsoo 아바타

      어디서 더 설명을 추가해야 할지 잘 모르겠네요.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다