HarmonyOS 点击物理返回键再按一次退出系统(eTS)

(1)首先,定义一个变量,用于计算用户两次按下返回键的时间差:

javascript 复制代码
 //todo 定义全局变量
  @State exitTime: number = 0;

(2)然后就是一个捕捉用户按下返回键的事件:

javascript 复制代码
 //todo 定义全局变量
  @State exitTime: number = 0;

(3)完整代码

javascript 复制代码
 //todo 定义全局变量
  @State exitTime: number = 0;
  onBackPress() {
    this.ExitApp();
    return true;
  }
  public ExitApp() {
    //todo 判断点击时间与上一次点击时间差,
    // 若大于5秒则提示'再按一次退出程序'字样
    if ((new Date().getTime() - this.exitTime) > 5000) {
      prompt.showToast({
        message: '再按一次退出程序',
        duration: 2000,
      });
      this.exitTime = new Date().getTime();
    } else {
      //todo 小于5秒退出应用
      app.terminate();
    }
  }
相关推荐
ONEDAY1 小时前
HarmonyOS 深色模式适配实践:从资源、WebView 到网络图统一处理
harmonyos
鸿蒙开发1 天前
鸿蒙(HarmonyOS NEXT)表单校验别再手撸正则了 —— 我写了个 ArkTS 版 zod
harmonyos
TrisighT1 天前
ArkTS 的 @BuilderParam 你八成只用了皮毛——那个尾随闭包写法差点被我当 bug 删了
harmonyos·arkts·arkui
ONEDAY2 天前
HarmonyOS 多 Product 构建实践:一套代码生成多个产物
harmonyos
TT_Close2 天前
别劝退了!5秒搞定 Flutter 鸿蒙 FVM 起跑线
flutter·harmonyos·visual studio code
TrisighT2 天前
ArkTS 列表滚动时为什么会闪现旧数据?我扒了 LazyForEach 的复用逻辑
harmonyos·arkts·arkui
MonkeyKing2 天前
鸿蒙ArkTS深度剖析:ArkTS与TS/JS核心差异、静态强类型实战优势
typescript·harmonyos
TrisighT2 天前
Electron鸿蒙PC上写日志文件,我被权限和路径坑了两次
electron·harmonyos
TrisighT3 天前
一个下午搞定 ArkTS 折叠面板?结果我从两点写到晚上九点
harmonyos·arkts·arkui
花椒技术6 天前
HJPusher / HJPlayer SDK 实践:我们为什么把直播推播链路拆成一套可复用能力
设计模式·harmonyos·直播