【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 })
    }
  }
}
相关推荐
2301_814809867 小时前
【HarmonyOS 6.0】ArkWeb 嵌套滚动快速调度策略:从机制到落地的全景解析
华为·harmonyos
前端不太难8 小时前
用 ArkUI 写一个小游戏,体验如何?
状态模式·harmonyos
南村群童欺我老无力.8 小时前
鸿蒙中AppStorage全局状态管理的生命周期问题
华为·harmonyos
SameX8 小时前
鸿蒙呼吸动画踩了三个坑:GPU降级时机、设计Token校验、i18n漏key——具体怎么处理的
harmonyos
音视频牛哥9 小时前
鸿蒙 NEXT 时代的“同屏推流”:从底层架构设计到工程落地全解析
华为·harmonyos·大牛直播sdk·鸿蒙next无纸化同屏·鸿蒙next屏幕采集推流·纯血鸿蒙无纸化会议·鸿蒙同屏rtmp推流
小成Coder10 小时前
【Jack实战】原生接入“悬浮导航 + 沉浸光感”Tab
华为·harmonyos·鸿蒙
南村群童欺我老无力.10 小时前
鸿蒙开发中@Prop与@State的数据流陷阱
华为·harmonyos
九流下半10 小时前
OpenHarmony签名指南:自动与手动详解
签名·openharmony·系统信息·系统应用签名
特立独行的猫a10 小时前
使用 vcpkg 将 pngquant 命令行移植到鸿蒙 PC(OpenHarmony )
华为·harmonyos·命令行·vcpkg·pngquant·三方库·鸿蒙pc
想你依然心痛10 小时前
HarmonyOS 6(API 23)游戏开发实战:基于悬浮导航与沉浸光感的“光影迷宫“解谜游戏
游戏·华为·harmonyos·悬浮导航·沉浸光感