117.info
人生若只如初见

Android双击返回键退出程序的3种写法

  1. 使用onBackPressed()方法:

@Override

public void onBackPressed() {

super.onBackPressed();

// 退出程序的操作

finish();

}

  1. 使用双击返回键的计时器:

private static final long DOUBLE_BACK_PRESS_TIME = 2000; // 双击返回键的间隔时间

private long backPressTime;

@Override

public void onBackPressed() {

if (backPressTime + DOUBLE_BACK_PRESS_TIME > System.currentTimeMillis()) {

super.onBackPressed();

// 退出程序的操作

finish();

} else {

Toast.makeText(this, “再次点击返回键退出程序”, Toast.LENGTH_SHORT).show();

}

backPressTime = System.currentTimeMillis();

}

  1. 使用手势库GestureDetector:

private static final int SWIPE_THRESHOLD = 100; // 手势的阈值

private static final int SWIPE_VELOCITY_THRESHOLD = 100; // 手势的速度阈值

private GestureDetector gestureDetector;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 初始化GestureDetector

gestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {

@Override

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {

// 计算手势的速度和方向

float deltaX = e2.getX() - e1.getX();

float deltaY = e2.getY() - e1.getY();

if (Math.abs(deltaX) > Math.abs(deltaY) && Math.abs(deltaX) > SWIPE_THRESHOLD && Math.abs(velocityX) > SWIPE_VELOCITY_THRESHOLD) {

if (deltaX > 0) {

// 右滑动,退出程序的操作

finish();

}

}

return super.onFling(e1, e2, velocityX, velocityY);

}

});

}

@Override

public boolean onTouchEvent(MotionEvent event) {

// 将触摸事件传递给GestureDetector处理

gestureDetector.onTouchEvent(event);

return super.onTouchEvent(event);

}

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe3d7AzsLBgRXAlA.html

推荐文章

  • android如何实现男女按钮选择

    要实现男女按钮选择,可以使用RadioGroup和RadioButton来实现。
    首先,在布局文件中,可以使用RadioGroup来包裹两个RadioButton,分别设置它们的id和文本:...

  • android怎么实现点击按钮跳转界面功能

    在Android中,可以通过以下方式实现点击按钮跳转界面的功能: 在布局文件中添加一个按钮控件,例如: 在Activity的Java文件中获取按钮控件,并为按钮设置点击事件...

  • Android中APP的启动过程是什么

    在Android中,APP的启动过程主要包括以下几个步骤: 用户点击APP图标或通过其他方式触发APP启动的事件。 系统根据APP的包名和启动模式,查找并启动对应的Activit...

  • Android如何修改APP版本号

    要修改Android应用的版本号,需要在应用的build.gradle文件中进行修改。具体步骤如下: 打开Android Studio并加载项目。 在项目窗口中,找到并展开“Gradle Scri...

  • 电脑开机后为什么显示器无信号

    显示器无信号可能是由以下几个原因引起的: 连接问题:检查电脑和显示器之间的连接线是否插紧,确保连接正确。如果使用的是HDMI或VGA等接口,请确保接口无损坏或...

  • win10企业版和专业版有什么区别

    Windows 10企业版和专业版是微软推出的两个不同版本的操作系统,主要针对不同的用户需求和使用场景。它们之间的区别如下: 授权方式:Windows 10企业版是通过企业...

  • 电脑的网络地址怎么查

    要查找电脑的网络地址,您可以使用以下步骤: 在桌面上打开一个命令提示符窗口。您可以按下Windows键+R,然后键入"cmd"并按下Enter键来快速打开命令提示符窗口。...

  • explorer.exe应用程序错误如何解决

    当您遇到explorer.exe应用程序错误时,可以尝试以下解决方法: 重启计算机:有时候explorer.exe错误可能是由于临时的系统问题造成的,重启计算机可能会解决问题。...