HarmonyOS Next 实现Lottie动画

打印 上一主题 下一主题

主题 1014|帖子 1014|积分 3042

先容

Lottie是一个适用于OpenHarmony的动画库,它可以解析Adobe After Effects软件通过Bodymovin插件导出的json格式的动画,并在移动设备上进行本地渲染, 可以在各种屏幕尺寸和分辨率上呈现,而且支持动画的交互性,通过添加触摸事件或其他用户交互操作,使动画更加生动和具有响应性。
结果图预览



使用说明
1.进入页面,点击动画卡片,动画播放而且文本发生厘革。
实现思路


  • 添加Lottie模块,源码参考oh-package.json5。
  1. {
  2.   "name": "lottieview",
  3.   "version": "1.0.0",
  4.   "description": "Please describe the basic information.",
  5.   "main": "Index.ets",
  6.   "author": "",
  7.   "license": "Apache-2.0",
  8.   "dependencies": {
  9.     // Lottie模块
  10.     "@ohos/lottie": "2.0.0",
  11.   }
  12. }
复制代码

  • 将Lottie的资源文件data.json文件放置到Entry目录下的common文件夹下(放置本模块中,使用相对路径无法读取)。数据参考politeChicky.json
  • 进入页面,通过Canvas的onReady函数加载动画,点击播放动画,动画实行播放,文本刷新。源码参考LotieView.ets
  1.   // 加载动画
  2.   loadAnimation(autoplay: boolean) {
  3.     if (this.animateItem !== null) {
  4.       this.animateItem.destroy();
  5.       this.animateItem = null;
  6.     }
  7.     // TODO:知识点:lottie.loadAnimation将json数据生成动画
  8.     this.animateItem = lottie.loadAnimation({
  9.       container: this.politeChickyController,
  10.       renderer: 'canvas',
  11.       loop: false,
  12.       autoplay: autoplay,
  13.       name: this.politeChicky,
  14.       path: this.politeChickyPath,
  15.       initialSegment: [FRAME_START, FRAME_END]
  16.     })
  17.   }
  18.   build() {
  19.     Stack({ alignContent: Alignment.TopStart }) {
  20.       // 动画
  21.       Canvas(this.politeChickyController)
  22.         .width($r('app.integer.canvas_size'))
  23.         .height($r('app.integer.canvas_size'))
  24.         .backgroundColor($r('app.color.ohos_id_color_palette2'))
  25.         .borderRadius($r('app.string.ohos_id_corner_radius_default_m'))
  26.         .onReady(() => {
  27.           this.loadAnimation(false);
  28.         })
  29.         .onClick(() => {
  30.           this.loadAnimation(true);
  31.           this.times++;
  32.         })
  33.       // 响应动画的文本
  34.       Text(this.textArray[this.times % TEXT_DATA_LENGTH])
  35.         .fontSize($r('app.string.ohos_id_text_size_headline'))
  36.         .margin($r('app.string.ohos_id_elements_margin_vertical_m'))
  37.         .fontColor(Color.White)
  38.     }.margin({ top: $r('app.string.ohos_id_elements_margin_vertical_l') })
  39.   }
  40. }
复制代码
高性能知识点

不涉及。
工程布局&模块范例

  1. lottieview                                         // har类型
  2. |---view
  3. |   |---LottieView.ets                             // 视图层-应用主页面
复制代码
模块依赖

本实例依赖common模块来实现日志的打印、资源 的调用、动态路由模块来实现页面的动态加载以及Lottie模块,版本为2.0.0。
末了

有很多小同伴不知道学习哪些鸿蒙开发技能?不知道必要重点掌握哪些鸿蒙应用开发知识点?而且学习时频仍踩坑,最终浪费大量时间。以是有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。 
这份鸿蒙(HarmonyOS NEXT)资料包罗了鸿蒙开发必掌握的核心知识要点,内容包罗了ArkTS、ArkUI开发组件、Stage模子、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技能、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(HarmonyOS NEXT)技能知识点。
盼望这一份鸿蒙学习资料可以或许给各人带来帮助,有必要的小同伴自行领取,限时开源,先到先得~无套路领取!!
如果你是一名有履历的资深Android移动开发、Java开发、前端开发、对鸿蒙感爱好以及转行人员,可以直接领取这份资料
 获取这份完备版高清学习蹊径,请点击→纯血版全套鸿蒙HarmonyOS学习资料
鸿蒙(HarmonyOS NEXT)最新学习蹊径




  •  HarmonOS根本技能



  • HarmonOS就业必备技能 

  •  HarmonOS多媒体技能



  • 鸿蒙NaPi组件进阶



  • HarmonOS高级技能



  • 初识HarmonOS内核 

  • 实战就业级设备开发

 有了蹊径图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)鸿蒙(OpenHarmony )开发入门教学视频,内容包罗:ArkTS、ArkUI、Web开发、应用模子、资源分类…等知识点。
获取以上完备版高清学习蹊径,请点击→纯血版全套鸿蒙HarmonyOS学习资料
《鸿蒙 (OpenHarmony)开发入门教学视频》


《鸿蒙生态应用开发V2.0白皮书》


《鸿蒙 (OpenHarmony)开发根本到实战手册》

OpenHarmony北向、南向开发情况搭建

 《鸿蒙开发根本》



  • ArkTS语言
  • 安装DevEco Studio
  • 运用你的第一个ArkTS应用
  • ArkUI声明式UI开发
  • .……

 《鸿蒙开发进阶》



  • Stage模子入门
  • 网络管理
  • 数据管理
  • 电话服务
  • 分布式应用开发
  • 关照与窗口管理
  • 多媒体技能
  • 安全技能
  • 使命管理
  • WebGL
  • 国际化开发
  • 应用测试
  • DFX面向将来计划
  • 鸿蒙系统移植和裁剪定制
  • ……

《鸿蒙进阶实战》



  • ArkTS实践
  • UIAbility应用
  • 网络案例
  • ……

 获取以上完备鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料
总结

总的来说,华为鸿蒙不再兼容安卓,对中年程序员来说是一个挑战,也是一个时机。只有积极应对厘革,不停学习和提升自己,他们才能在这个厘革的时代中立于不败之地。 


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

怀念夏天

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表