【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 })
    }
  }
}
相关推荐
奋斗的小青年!!19 分钟前
Flutter跨平台开发鸿蒙应用:表情选择器组件的深度实践
flutter·harmonyos·鸿蒙
世人万千丶23 分钟前
鸿蒙跨端框架Flutter学习day 1、变量与基本类型-智能家居监控模型
学习·flutter·ui·智能家居·harmonyos·鸿蒙·鸿蒙系统
小白阿龙24 分钟前
flutter 与鸿蒙融合开发实战:构建跨平台应用的新范式
flutter·华为·harmonyos
威哥爱编程26 分钟前
你的鸿蒙 APP 包为啥这么大?资源瘦身终极方案,立减 30%
harmonyos·arkts·arkui
世人万千丶26 分钟前
鸿蒙跨端框架Flutter学习day 1、变量与基本类型-咖啡店点餐逻辑
学习·flutter·ui·交互·鸿蒙·鸿蒙系统
威哥爱编程43 分钟前
别再乱用 @State 了!鸿蒙状态管理避坑指南,看完省 3 天脱发时间
harmonyos·arkts·arkui
lili-felicity1 小时前
React Native for Harmony 直角坐标系:精准定位与手势识别
react native·华为·harmonyos
菜鸟小芯1 小时前
【开源鸿蒙跨平台开发先锋训练营】Day2 OpenHarmony版Flutter 3.27版本开发环境搭建
flutter·harmonyos
小雨下雨的雨1 小时前
鸿蒙 PC 应用开发:初始化工程与原生程序构建
华为·交互·harmonyos·鸿蒙系统
不羁的木木1 小时前
【HarmonyOS组件开发征集活动-翻页时钟和计时器组件】
华为·harmonyos