【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 })
    }
  }
}
相关推荐
●VON22 分钟前
鸿蒙NEXT实战:用HdsTabs构建沉浸式音乐播放器 WaveFlow
华为·harmonyos·鸿蒙·新特性
●VON24 分钟前
鸿蒙NEXT视觉特效深度解析:gradientMask渐变遮罩与Material材质系统
华为·harmonyos·鸿蒙·材质·新特性
●VON1 小时前
BodyAR 骨骼数据解析:从 ARBody 到 23 个关键点的完整数据链路
华为·harmonyos·鸿蒙·新特性
●VON2 小时前
BodyAR 会话管理深度剖析:ARConfig 参数全解与生命周期最佳实践
华为·harmonyos·鸿蒙·新特性
●VON2 小时前
BodyAR 骨骼可视化渲染:Shape + Line + Circle 打造优雅的 AR 骨架叠加层
华为·ar·harmonyos·鸿蒙·新特性
anyup2 小时前
【最全鸿蒙】uni-app 转鸿蒙:从打包失败到商店上架成功全过程
前端·uni-app·harmonyos
●VON2 小时前
鸿蒙NEXT新特性:HdsTabs悬浮页签栏barFloatingStyle完全入门指南
华为·harmonyos·鸿蒙·新特性
互联网散修3 小时前
鸿蒙自定义安全键盘开发实战:Canvas 精密布局与安全交互
harmonyos·自定义键盘
nashane3 小时前
HarmonyOS 6学习:麦克风“抢戏”打断音频?AudioSession焦点避坑指南
学习·音视频·harmonyos