You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在HarmonyOS中如何修改不同AbilitySlice间切换的转场动画?

HarmonyOS 实现页面返回过渡动画的方案及可用转场类型

一、实现类似Android overridePendingTransition 的返回动画效果

你要的从次级页面返回主页时左滑入主页、右滑出次级页的效果,根据使用的路由场景分两种实现方式:

场景1:同一应用内ArkUI页面路由(使用router接口)

在次级页面的onBackPress生命周期(监听物理返回键)或者自定义返回按钮的点击逻辑中,调用router.back时指定转场参数即可,示例代码如下:

import router from '@ohos.router';
import { Curve, PlayMode } from '@ohos.curves';

@Entry
@Component
struct SecondPage {
  // 监听物理返回键触发
  onBackPress(): boolean {
    router.back({
      transition: {
        // 进入页(主页)动画:从左侧滑入
        enter: {
          translate: { x: '-100%', y: 0 },
          opacity: 0,
          duration: 300,
          curve: Curve.EaseOut,
          playMode: PlayMode.Normal
        },
        // 退出页(当前次级页)动画:向右侧滑出
        exit: {
          translate: { x: '100%', y: 0 },
          opacity: 1,
          duration: 300,
          curve: Curve.EaseIn
        }
      }
    })
    // 返回true拦截默认返回逻辑,使用自定义动画
    return true;
  }

  build() {
    // 页面布局实现
  }
}

场景2:不同UIAbility之间的跳转返回

如果是跨Ability的页面切换,可以在UIAbility的onWindowStageCreate生命周期中配置全局窗口转场动画,示例代码如下:

import UIAbility from '@ohos.app.ability.UIAbility';
import window from '@ohos.window';
import { Curve } from '@ohos.curves';

export default class MainAbility extends UIAbility {
  onWindowStageCreate(windowStage: window.WindowStage) {
    windowStage.getMainWindow().then(win => {
      // 配置窗口切换的全局转场动画
      win.setWindowTransitionAnimation({
        enter: {
          duration: 300,
          curve: Curve.EaseOut,
          translate: { x: '-100%', y: 0 }
        },
        exit: {
          duration: 300,
          curve: Curve.EaseIn,
          translate: { x: '100%', y: 0 }
        }
      })
    })
  }
}

二、HarmonyOS 可用的转场动画类型

HarmonyOS 提供系统预置转场和完全自定义转场两类能力:

  • 系统预置转场:官方封装好的开箱即用效果,包含:
    • 滑动类:左右/上下四个方向的滑入滑出,对应页面导航、底部弹窗等常见场景
    • 渐变类:淡入淡出,适用于浮层、弹窗切换场景
    • 缩放类:放大进入/缩小退出,适用于列表跳详情的共享元素类场景
  • 自定义转场:可自由组合以下属性实现任意转场效果:
    • 基础变换属性:位移、缩放、透明度、旋转
    • 动画配置项:自定义时长、插值曲线、播放模式(正向/反向/循环)

内容的提问来源于stack exchange,提问作者OxO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 04:51:04