티스토리 뷰

백키 2번눌러 앱 종료시키기 / 안드로이드 onBackPressed 오버라이드

뒤로가기키를 눌렀을때 바로바로 뒤로가기가 실행되지 않도록 제어하기위해

코드내에서 onBackPressed함수를 오버라이드하여 백키를 눌렀을때의 설정을 구현.

public class MainActivity extends Activity {

private final long FINSH_INTERVAL_TIME = 2000; // 2초안에 뒤로가기를 한번더 누르면 종료되도록 2000설정

private long backPressedTime = 0; // 백키를 눌렀을때 시간 0초 ~2초

@Override

protected void onCreate( Bundle savedInstanceState ) {

super.onCreate( savedInstanceState );

setContentView( R.layout.activity_main );

}

@Override

public void onBackPressed() {

long tempTime = System.currentTimeMillis();

long intervalTime = tempTime - backPressedTime;

if ( 0 <= intervalTime && FINSH_INTERVAL_TIME >= intervalTime ) {

super.onBackPressed();

}

else {

backPressedTime = tempTime;

Toast.makeText(getApplicationContext(),"'뒤로'버튼을한번더누르시면종료됩니다.",Toast.LENGTH_SHORT).show();

}

댓글