大家好,今天来为大家解答lottie怎么读这个问题的一些问题点,包括lottiecash翻译也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
本文目录
一、RE: 从零开始的车载Android HMI(一) - Lottie
1、多年以前汽车还是以机械仪表主体的年代,各大汽车主机厂商并不十分关注 *** 作 *** UI的交互功能,但是随着车载SOC算力的不断提高以及主机厂商对汽车座舱竞争的白热化。座舱的HMI在设计上在强调功能 *** 的同时也开始关注UI的艺术 *** ,HMI的设计师们期望艺术与功能应该协同工作,让用户沉浸在“第三空间”的体验中。
2、有了需求程序员就需要关注如何实施和落地,然而Android应用本身虽然有着完整的动画框架支持,但是开发复杂、调试耗时,大型的gif或逐帧动画对于CPU&内存占用都不太理想,所以许多Android的 *** 应用基本上不怎么有动画。而且车载HMI上越来越多的开始引入各种光影、粒子效果,如果基于Android的原生控件来实现这些粒子效果,难度非常大,这就需要今天的主角Lottie来实现了。
3、 Lottie是一种基于 *** ON的动画文件格式,它使设计师能够在任 *** 台上发布动画,就像发布静态资产一样简单。它们是在任何设备上工作的小文件,可以在不进行像素化的情况下放大或缩小。
4、可以修改属 *** ,动态生成可交互的动画(使用 *** 动画难以实现交互功能)
5、可以更轻松的实现粒子、光影等特效
6、然后就可以在布局文件中使用LottieAni *** tionView了
7、 LottieAni *** tionView继承自AppCompatI *** geView,所以I *** geView支持的属 *** , LottieAni *** tionView都是支持的,这部分就不再介绍了。
8、如果设定 app:lottie_fileName="other/Hamb *** gerArrow.json",那么lottie就会读取assets/other/Hamb *** gerArrow.json。
9、 void setAni *** tionFromJson(String jsonString,@Nullable String cacheKey)
10、 void setCacheComposition(boolean cacheComposition)
11、 Lottie的Demo中内置了很多官方自己开发的动画效果,目的是为我们展示Lottie的常见用法,作为开发者我们必须掌握,并在适当的时候运用到我们的应用中。
12、该效果展示了lottie支持动态修改json,让动画中的一小部分属 *** 发生改变。
13、 KeyPath中的 LeftArmW *** e是Json中的一个属 ***
14、修改的效果如下。注意看右手的摆动频率X3后比X1高,以至于录制的GIF直接丢帧了。
15、该效果展示了动画文字效果。这个效果实现起来其实不难,从程序中捕获输入的字母,再替换成lottie的资源文件即可。
16、注意,这里其实用了两个lottieView,分别设定了不同的文字。
17、该效果展示通过 *** 点击事件来播放不同的lottie动画。这个效果最常见,APP中的点赞效果大多都是这样的实现思路。
18、在车载HMI开发中往往我们会在实现、调试UI上花费大量的时间,如果能够灵活的运用Lottie,就可以显著节省程序的开发时间。例如,光影、粒子等特效虽然可以也考虑用Kanzi等3D引擎实现,但是3D引擎会消耗成倍的SOC *** 能,实际开发过程中,简单的特效使用Lottie实现,可以极大的优化应用的 *** 能,给用户一个更优秀的体验。
19、本篇很多内容参考了《Android自定义控件高级进阶与精彩实例(博文视点出品)》(启舰)【摘要书评试读】-京东图书这本书的内容,写得相当不错,非常值得认真阅读。
20、下一篇来讲讲车载HMI开发时都会用到的一个 *** 组件- Widget
21、还不知道什么是汽车HMI设计?进来带你快速了解
22、《Android自定义控件高级进阶与精彩实例(博文视点出品)》(启舰)【摘要书评试读】-京东图书
二、iOS Lottie 使用注意点
1、lottie是一个很不错的库,能够用设计人员出动画,直接内嵌程序进行播放,酷炫而简单,大大提升开发效率。
2、不过iOS版本的api有一些不太友好,有两个点记录一下
3、在创建LOTComposition的之后,还可以指定根目录,这样就可以使用同一个bundle了。
4、因为initModel会触发整个json文件的读取和ui元素初始化,包括 *** 初始化。初始化之后再设置root就没有任何意义了。
5、两个姿势供你挑选。其实关系也不大,一个是维护bundle的目录,一个是维护root的目录,半斤八两。
6、有的同学会问:我也在组件中使用lottie啊,怎么没涉及到bundle设置的问题?
7、答:因为bundle只用来获取资源,如果你使用json直传的方式,并且没有需要依赖的 *** ,那么不会影响lottie内部的加载。
好了,文章到此结束,希望可以帮助到大家。
标签: lottiecash 翻译 怎么 lottie