앱 사용하다가 종료를 할때 뒤로가기 버튼을 한번 더 터치하면 앱을 종료한다는거 한번 이상은 보셨을거라 생각을 합니다.


코드를 보도록 하겠습니다.



BackPressCloseHandler.java

public class BackPressCloseHandler extends Activity {

private long backKeyPressedTime = 0;

private Toast toast;

private Activity activity;

public BackPressCloseHandler(MainActivity context) {

this.activity = context;

        }

        public void onBackPressed() {

         if (System.currentTimeMillis() > backKeyPressedTime + 2000) {

         backKeyPressedTime = System.currentTimeMillis();

        showGuide();

         return;

         }

         if (System.currentTimeMillis() <= backKeyPressedTime + 2000) {

         activity.finish();

         toast.cancel();

         }

        }

        

        

        private void showGuide() {

         toast = Toast.makeText(activity, "뒤로 버튼을 한번 더 터치하시면 종료됩니다.",

         Toast.LENGTH_SHORT);

         toast.show();

        }

}




MainActivity.java 

private BackPressCloseHandler backPressCloseHandler;


@Override

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    backPressCloseHandler = new BackPressCloseHandler(this);

}


public void onBackPressed() {

    backPressCloseHandler.onBackPressed();

}


크게 어려운건 없지 싶습니다.


궁금하신거는 댓글 달아주세요


Posted by 정윤문경아빠