【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 })
    }
  }
}
相关推荐
hefengbao16 分钟前
【京墨文库】安卓版 v.16.1, 鸿蒙版 v1.2.1发布
华为·harmonyos
小学生波波38 分钟前
HarmonyOS6 - XComponent与AVPlayer实现视频播放功能
arkts·鸿蒙·鸿蒙系统·视频播放·鸿蒙开发·harmonyos6
lili-felicity43 分钟前
React Native for HarmonyOS (鸿蒙) 实战精讲:2D/3D 变换全场景
react native·3d·harmonyos
哈哈你是真的厉害1 小时前
React Native 鸿蒙跨平台开发:Badge 徽标
react native·react.js·harmonyos
奋斗的小青年!!2 小时前
Flutter在OpenHarmony上实现渐变文字动画的深度优化实践
前端·flutter·harmonyos·鸿蒙
鸣弦artha2 小时前
Flutter 框架跨平台鸿蒙开发 —— Image Widget 图片处理:圆角、裁剪、阴影
android·flutter·harmonyos
南村群童欺我老无力.2 小时前
Flutter 框架跨平台鸿蒙开发 - 从零打造一款精美天气App
flutter·华为·harmonyos
zhujian826372 小时前
二十六、【鸿蒙 NEXT】LazyForeach没有刷新
华为·harmonyos·下拉刷新·lazyforeach未刷新
不爱吃糖的程序媛3 小时前
KuiklyUI 运行到鸿蒙平台的实践
华为·harmonyos
kirk_wang3 小时前
Flutter `share_plus` 库在鸿蒙 OHOS 平台的分享功能适配实践
flutter·移动开发·跨平台·arkts·鸿蒙