Program Tip

프로그래밍 방식으로 Android에서 뒤로 버튼을 누르는 방법은 무엇입니까?

programtip 2020. 10. 18. 19:04
반응형

프로그래밍 방식으로 Android에서 뒤로 버튼을 누르는 방법은 무엇입니까?


내 앱에는 로그 아웃 기능이 있습니다. 사용자가 로그 아웃을 클릭하면 홈 화면으로 이동합니다. 이제 뒤로 버튼을 눌러 앱을 종료합니다. 하지만 내가 원하는 것은 뒤로 버튼 기능과 마찬가지로 자동으로 (예 : 프로그래밍 방식으로) 종료해야한다는 것입니다. finish ()를 호출하면 기능이 수행된다는 것을 알고 있습니다. 그러나 문제는 이전 활동으로 이동한다는 것입니다.


onBackPressed()지원되는 이유 : API 레벨 5

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK)) {
        onBackPressed();
    }
}

@Override
public void onBackPressed() {
    //this is only needed if you have specific things
    //that you want to do when the user presses the back button.
    /* your specific things...*/
    super.onBackPressed();   
}

재정의 할 필요가 없습니다 onBackPressed(). 사용자가 뒤로 버튼을 눌렀을 때 활동이 기본적으로 수행 할 작업으로 이미 정의되어 있습니다. 따라서 onBackPressed()뒤로 버튼을 "프로그래밍 방식으로 누르"고 싶을 때마다 전화 하면됩니다.

finish()그래도 호출되는 결과 만;)

뒤로 버튼이하는 일이 헷갈리는 것 같아요. 기본적으로에 대한 호출 finish()이므로 현재 활동을 종료합니다. 해당 활동 뒤에 무언가가 있으면 해당 화면이 표시됩니다.

할 수있는 일은 로그인에서 활동을 시작할 때 CLEAR_TOP 플래그를 추가하여 종료 할 때 로그인 활동이 존재하지 않도록하는 것입니다.


때로 onBackPressed () 메서드를 재정의하는 데 유용합니다. 조각으로 작업하고 뒤로 단추를 누르면 조각 사이를 변경하는 경우 이전 조각으로 돌아 가기 때문입니다.


onBackPressed활동에서 재정의 한 후 호출 하십시오.


간단히 onBackPressed ();

또는 조각을 사용하는 경우 getActivity (). onBackPressed ()를 사용할 수 있습니다.


간단히 finish (); 첫 수업에서 '(로그인 활동) onPause (); 방법. 그게 다야

참고 URL : https://stackoverflow.com/questions/10718789/how-to-press-back-button-in-android-programmatically

반응형