>  기사  >  Java  >  Android 활동에서 Double-Back-To-Exit 동작을 구현하는 방법은 무엇입니까?

Android 활동에서 Double-Back-To-Exit 동작을 구현하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-02 21:24:30501검색

How to Implement Double-Back-to-Exit Behavior in Android Activities?

Android 활동에서 뒤로 버튼 종료 확인

Android 애플리케이션에서는 사용자가 뒤로 버튼을 두 번 눌러 종료해야 하는 것이 일반적입니다. 활동. 이 동작을 "이중 복귀 종료"라고 합니다. 내장된 기능처럼 보일 수 있지만 특정 클래스나 메서드를 통해 직접 액세스할 수는 없습니다.

맞춤 구현

이 기능을 구현하려면 다음을 수행하세요. 활동의 onBackPressed() 메서드 내에서 자신만의 논리를 만듭니다. 다음은 Java의 예입니다.

<code class="java">boolean doubleBackToExitPressedOnce = false;

@Override
public void onBackPressed() {
    if (doubleBackToExitPressedOnce) {
        super.onBackPressed();
        return;
    }

    this.doubleBackToExitPressedOnce = true;
    Toast.makeText(this, "Please click BACK again to exit", Toast.LENGTH_SHORT).show();

    new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {

        @Override
        public void run() {
            doubleBackToExitPressedOnce=false;                       
        }
    }, 2000);
} </code>

Kotlin에서는 다음 코드를 사용하여 동일한 결과를 얻을 수 있습니다.

<code class="kotlin">private var doubleBackToExitPressedOnce = false
override fun onBackPressed() {
        if (doubleBackToExitPressedOnce) {
            super.onBackPressed()
            return
        }

        this.doubleBackToExitPressedOnce = true
        Toast.makeText(this, &quot;Please click BACK again to exit&quot;, Toast.LENGTH_SHORT).show()

        Handler(Looper.getMainLooper()).postDelayed(Runnable { doubleBackToExitPressedOnce = false }, 2000)
    }</code>

이러한 구현에는 부울 플래그(doubleBackToExitPressedOnce)가 있습니다. 사용자가 이미 뒤로 버튼을 클릭했는지 여부를 추적합니다. 플래그가 true이면 활동이 종료됩니다. 그렇지 않으면 플래그를 true로 설정하고 토스트 메시지를 표시하여 사용자에게 종료 작업을 취소할 수 있는 기회를 제공합니다.

무한 뒤로 버튼 클릭을 방지하기 위해 핸들러를 사용하여 잠시 후 doubleBackToExitPressedOnce 플래그를 재설정합니다. 지연(예: 2초).

위 내용은 Android 활동에서 Double-Back-To-Exit 동작을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.