HarmonyOS应用开发-ets页面间转场_第1页
HarmonyOS应用开发-ets页面间转场_第2页
HarmonyOS应用开发-ets页面间转场_第3页
HarmonyOS应用开发-ets页面间转场_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、蛟龙腾飞学习分享材料 HarmonyOS应用开发-ets页面间转场说明:该组件从API version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。一、页面转场通过在全局pageTransition方法内配置页面入场组件和页面退场组件来自定义页面转场动效。组件名称参数参数描述PageTransitionEnterObject页面入场组件,用于自定义当前页面的入场效果PageTransitionExitObject页面退场组件,用于自定义当前页面的退场效果PageTransitionEnter和PageTransitionExit组件支持的属性:参数名称参数类型默认值

2、必填参数描述slideSlideEffectRight否设置转场的滑入效果translatex? : number,y? : number,z? : number-否设置页面转场时的平移效果,为入场时起点和退场时终点的值,和slide同时设置时默认生效slide。scalex? : number,y? : number,z? : number,centerX? : number,centerY? : number-否设置页面转场时的缩放效果,为入场时起点和退场时终点的值。opacitynumber1否设置入场的起点透明度值或者退场的终点透明度值。PageTransitionEnter和Page

3、TransitionExit组件支持的事件:事件功能描述onEnter(type: RouteType, progress: number) = void回调入参为当前入场动画的归一化进度0 - 1。onExit(type: RouteType, progress: number) = void回调入参为当前退场动画的归一化进度0 - 1。二、示例效果展示:示例代码:index.etsEntryComponentstruct PageTransitionExample1 State scale: number = 1 State opacity: number = 1 State active

4、: boolean = false build() Column() Navigator( target: pages/page1, type: NavigationType.Push ) Image($rawfile(fss.jpg).width(100%).height(100%) .onClick() = this.active = true ) .scale( x: this.scale ).opacity(this.opacity) / 自定义方式1:完全自定义转场过程的效果 pageTransition() PageTransitionEnter( duration: 1200,

5、curve: Curve.Linear ) .onEnter(type: RouteType, progress: number) = this.scale = 1 this.opacity = progress ) / 进场过程中会逐帧触发onEnter回调,入参为动效的归一化进度(0% - 100%) PageTransitionExit( duration: 1500, curve: Curve.Ease ) .onExit(type: RouteType, progress: number) = this.scale = 1 - progress this.opacity = 1 )

6、/ 退场过程中会逐帧触发onExit回调,入参为动效的归一化进度(0% - 100%) page1.ets/ page1.etsEntryComponentstruct AExample State scale: number = 1 State opacity: number = 1 State active: boolean = false build() Column() Navigator( target: pages/index ,type: NavigationType.Push) Image($rawfile(gz.jpg).width(100%).height(100%) .h

7、eight(100%).width(100%).scale( x: this.scale ).opacity(this.opacity) / 自定义方式1:完全自定义转场过程的效果 pageTransition() PageTransitionEnter( duration: 1200, curve: Curve.Linear ) .onEnter(type: RouteType, progress: number) = this.scale = 1 this.opacity = progress ) / 进场过程中会逐帧触发onEnter回调,入参为动效的归一化进度(0% - 100%) PageTransitionExit( duration: 1500, curve: Curve.Ease ) .onExit(type: RouteType, progress: number) = this.scale = 1 - progress this.opacity = 1 ) / 退场过程中会逐帧触发onExit回调,入参为动效的归一化进度(0% - 100%) 完整代码地址: HY

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论