HarmonyOS 鸿蒙Next 如何通过SwipeGesture实现右滑页面退出APP

HarmonyOS 鸿蒙Next 如何通过SwipeGesture实现右滑页面退出APP

```typescript
build() {
  Column() {
    Stack({ alignContent: Alignment.TopStart }) {
      Image($r("app.media.splash_page_background_ad"))
        .width(CommonConstants.IMAGE_WIDTH)
        .height(CommonConstants.IMAGE_HEIGHT)
        .objectFit(ImageFit.Fill)

      AdvertiseIcon(); //广告

      SkipButton({ secondsCount: (CommonConstants.DELAY_SECONDS - this.pageShowTime) })
    }
    .layoutWeight(CommonConstants.STACK_LAYOUT_WEIGHT)
    .width(CommonConstants.STACK_WIDTH)
 
  }
  .alignItems(HorizontalAlign.Start)
  .width(CommonConstants.COLUMN_WIDTH)
  .height(CommonConstants.COLUMN_HEIGHT)
  // 单指 方向滑动时触发该事件
  //为页面添加滑动手势
  .gesture(
  SwipeGesture({ direction: SwipeDirection.Horizontal })
    .onAction((event: GestureEvent) => {

      app.terminate(); // 退出当前Ability。
      process.exit(0)
    })

  )
}

注意是右滑,而不是左滑。arkTS有判断是右滑还是左滑判断的API吗?


更多关于HarmonyOS 鸿蒙Next 如何通过SwipeGesture实现右滑页面退出APP的实战教程也可以访问 https://www.itying.com/category-93-b0.html

9 回复
这个event参数肯定有信息的,

更多关于HarmonyOS 鸿蒙Next 如何通过SwipeGesture实现右滑页面退出APP的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在API文档中我没有发现,您这里有找到文档的链接吗?

你可以直接打印看一下有啥能用的,

好的 谢谢,

另外,侧滑如何返回上一页??

建议页面左上角加个返回按钮,然后返回按钮添加事件,侧滑就可以返回上一页:

router.back() 非常感谢,

router.back()在API8的FAMODE下没有反应,

在HarmonyOS(鸿蒙)系统中,通过SwipeGesture实现右滑页面退出APP的功能,通常涉及以下步骤:

  1. 监听SwipeGesture: 在页面的布局文件中,为需要监听滑动手势的组件添加SwipeGesture监听器。这可以通过XML布局文件或代码动态设置完成。

  2. 识别右滑手势: 在SwipeGesture的回调函数中,识别用户是否执行了右滑操作。这通常通过检查手势的方向和距离来实现。

  3. 实现退出逻辑: 一旦识别到右滑手势,执行退出APP的逻辑。这可能包括清理资源、保存状态等操作,并最终调用系统提供的API来结束当前应用进程。

  4. 注意事项:

    • 确保手势识别准确,避免误操作。
    • 退出APP前,可能需要提示用户确认,以提高用户体验。
    • 鸿蒙系统对应用退出有严格的权限控制,确保应用有权限执行退出操作。

具体实现时,可以参考鸿蒙系统的官方文档和示例代码,了解如何配置手势监听器、识别手势方向以及执行退出操作。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部