📜  android 按回 2 次退出 (1)

📅  最后修改于: 2023-12-03 15:29:22.080000             🧑  作者: Mango

Android 按回 2 次退出

在 Android 应用程序中,实现“按回 2 次退出”是一个常见的功能。当用户点击返回按钮时,如果在一段时间内再次点击返回按钮,那么程序会退出。

这个功能可以使用一个变量来保存最后一次点击返回按钮的时间戳,在下一次点击返回按钮时检查时间戳距离上一次的时间是否在一段可接受的范围内。如果是,则退出程序。如果不是,则更新时间戳,并提示用户再次点击返回按钮退出程序。

以下是实现“按回 2 次退出”的代码示例:

public class MainActivity extends AppCompatActivity {

    private static final long TIME_INTERVAL = 2000; // 退出间隔时间(单位:毫秒)
    private long mBackPressedTime; // 上一次点击返回键的时间戳

    @Override
    public void onBackPressed() {
        if (mBackPressedTime + TIME_INTERVAL > System.currentTimeMillis()) {
            super.onBackPressed(); // 退出程序
        } else {
            Toast.makeText(this, "再按一次返回键退出", Toast.LENGTH_SHORT).show(); // 提示用户再次点击返回键退出
        }
        mBackPressedTime = System.currentTimeMillis(); // 更新时间戳
    }
}

在上面的代码示例中,我们重写了 onBackPressed() 方法,当用户点击返回按钮时会调用该方法。我们首先检查时间戳距离上一次的时间是否小于 TIME_INTERVAL,如果是则直接调用 super.onBackPressed() 退出程序。如果时间戳距离上一次的时间大于等于 TIME_INTERVAL,则说明用户想要退出程序,此时我们显示一个提示信息并更新时间戳。

以上就是实现“按回 2 次退出”的代码实现。如果你有其他更好的实现方式,欢迎留言分享。