일단 아래의 BackPressCloseHandler 파일을 생성해둔다..
어느플젝에서도 사용가능하도록...
public class BackPressCloseHandler {
private long backKeyPressedTime = 0;
private Toast toast;
private Activity activity;
public BackPressCloseHandler(Activity context){
this.activity = context;
}
public void onBackPressed(){
if (System.currentTimeMillis() > backKeyPressedTime + 1500) {
backKeyPressedTime = System.currentTimeMillis();
showGuide();
return;
}else if (System.currentTimeMillis() <= backKeyPressedTime + 1500) {
activity.finish();
toast.cancel();
}
}
public void showGuide(){
toast = Toast.makeText(activity, "\'뒤로\'버튼을 한번 더 누르시면 종료됩니다.", Toast.LENGTH_SHORT);
toast.show();
}
}
그리고.. 원하는 액티비티에서.. 아래와 같이 호출하여 사용함.
private BackPressCloseHandler backPressCloseHandler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
backPressCloseHandler = new BackPressCloseHandler(this);
}
@Override
public void onBackPressed() {
backPressCloseHandler.onBackPressed();
}