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(); }
안드로이드 앱중에 원기 날씨가 뒤로가기 두번 연달아 누르면 종료되고 한번 누르면 메세지만 보여주는데
그게 괜찮은 방식 같아서 적용해봄 그리고 소스 정리함.
답글 남기기