【HarmonyOS】取消页面转场动画

【HarmonyOS】取消页面转场动画

问题背景:

当A页面切换至B页面时,系统会自带左右进场退场的动画效果。一般来说,该效果是ok的,但是在特殊场景下,例如:

A页面跳到B页面,又跳到C页面。C页面直接返回到A页面。正常不处理时,C到A会有两次页面切换的动画,最终才能展示到A页面。此时就需要能将B页面的转场动画取消。

解决方案:

在页面中,即@Entry修饰的页面类中,需要重写函数pageTransition,实现PageTransitionEnter页面进入,PageTransitionExit页面退出两个实例。

当需要禁止转场动画时,将duration时间设置为0即可。

【目前华为不推荐该pageTransition方式设置转场动画,不过该方法设置起来很简单,若不是较为复杂的业务or动画特殊效果可以如此设置。】

Demo示例:

dart 复制代码
/**
 * 禁用页面转场动画
 */
@Entry
@Component
struct PageTransitionPage {
  
  @State isBackA: boolean = true;

  build() {
    Stack(){
      Text("页面B")
        .size({ width: "100%", height: "100%"})
    }
  }

  pageTransition() {
    if(this.isBackA){
      PageTransitionEnter({ type: RouteType.None, duration: 0 })
      PageTransitionExit({ type: RouteType.None, duration: 0 })
    }
  }
}
相关推荐
奋斗的小青年!!4 小时前
Flutter浮动按钮在OpenHarmony平台的实践经验
flutter·harmonyos·鸿蒙
Georgewu5 小时前
【HarmonyOS应用开发】鸿蒙应用实现横竖屏切换的两种方式以及注意事项
harmonyos
万少8 小时前
告别素材焦虑!用 AI 一键生成鸿蒙项目图片素材
ai编程·harmonyos
wszy18099 小时前
外部链接跳转:从 App 打开浏览器的正确姿势
java·javascript·react native·react.js·harmonyos
奋斗的小青年!!11 小时前
OpenHarmony Flutter 拖拽排序组件性能优化与跨平台适配指南
flutter·harmonyos·鸿蒙
sinat_3842410911 小时前
HarmonyOS应用开发的trae cn全面实战指南
华为·harmonyos
小雨下雨的雨12 小时前
Flutter 框架跨平台鸿蒙开发 —— Stack 控件之三维层叠艺术
flutter·华为·harmonyos
行者9613 小时前
OpenHarmony平台Flutter手风琴菜单组件的跨平台适配实践
flutter·harmonyos·鸿蒙
Van_Moonlight13 小时前
RN for OpenHarmony 实战 TodoList 项目:已完成未完成数量显示
javascript·开源·harmonyos
陈_杨14 小时前
前端成功转鸿蒙开发者真实案例,教大家如何开发鸿蒙APP--ArkTS 卡片开发完全指南
前端·harmonyos