Lottie 集成动画缺失部分 解决方法

2023-05-16

首先附上Lottie iOS的地址,集成方式参见README Lottie

在集成Lottie的时候首先第一步是熟悉基本使用
首先将美工给的JSON文件导入到工程(本人通过此文顺利指导公司美工导出JSON,亲测有效:https://www.jianshu.com/p/94f7a0102be5),直接拖动进来:
选择相应的选项:
image.png
然后在工程中就可以看到这个JSON文件了
image.png

很简单的几行代码就可以实现图片的动画效果

        //指定加载的JSON文件
        let animation = Animation.named("fishJson")
        //将动画添加到AnimationView
        fishBubble.animation = animation
        //填充模式(拉伸模式)
        fishBubble.contentMode = .scaleAspectFit
        //开启动画
        fishBubble.play()
        //动画循环播放
        fishBubble.loopMode = .loop
        //动画位置
        fishBubble.frame = CGRect(x: 0, y: -10, width: 0.092*K_ScreenW, height: 0.653*0.108*K_ScreenW)

此处就实现了JSON文件的动画效果,可以运行模拟器调试。
按理说此处已经成功加载了动画效果,但是部分童鞋的动画效果可能没有显示出来,别急,本人测试第一步:
让公司美工导出时选择Demo选项,导出为html文件,直接网页测试(插件导出时,在Settings中可以设置)
image.png
在美工电脑上显示无任何问题,开始在自己电脑上测试,打开Lottie官方测试地址:Lottie官方测试地址

点击右上角,这个性感按钮:

image.png
直接将美工的JSON文件拖入,发现了问题
image.png
???这是个锤子?,图片呢?怎么变成了展位图。这时候发现美工那里有一个文件夹,里面还有图片资源没有给我,拿到图片资源后,怎么加成了问题,从网上找了很多文章没有答案,只能去查官方文档。果然发现了,哦豁!

image.png

这是啥?没错,Lottie官方已经说了,如果你的动画包含位图,第三方图片不是纯动画绘制效果,那就需要从文件中读取,才能正确显示!这个方法就是ImageProvider

其实早就有考虑过这个问题,但是当时很蠢的把图片加到了Assets文件夹
image.png

NO~NO~NO~这不是正确的打开方式!因为我们最终要使用Bundle读取,直接和JSON文件一样,拖入工程
image.png
(似曾相识对吧)OK!这时候JSON文件和图片资源都准备好了加上那关键的一行代码(img_0是你的图片名称,相应替换)

//加载图片资源
let imageProvider = BundleImageProvider(bundle: Bundle.main, searchPath: "img_0")
//添加到相应动画视图
fishBubble.imageProvider = imageProvider

启动后正确显示所有动画效果!
以上代码均以swift实现,OC相应替换即可。Lottie动画内容丢失的各个测试方案也在文中说明,总体来说Lottie是一个非常强大和好用的库,虽然很多功能还不支持,但还是期待一下?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Lottie 集成动画缺失部分 解决方法 的相关文章

随机推荐

  • Javassist学习总结

    要想将编译时不存在的类在运行时动态创建并加载 xff0c 通常有两种策略 xff1a 1 动态编译 2 动态生成二进制字节码 xff08 class xff09 对于第二种策略 xff0c 实际上已经有诸多比较成熟的开源项目提供支持 xff
  • viewstub学习笔记

    当需要在运行时动态改变布局的情况下 xff0c 使用viewstub来进行动态的布局架构是逻辑简单控制灵活的 xff0c 并且相比于设置view gone来说viewstub更加的轻量化 xff0c 只有当调用了viewstub infla
  • 程序员的酸甜苦辣——告别Coding

    程序员的酸甜苦辣 告别Coding lt script language 61 34 javascript 34 type 61 34 text javascript 34 gt document title 61 34 程序员的酸甜苦辣
  • 基于参考注释的RNA-seq分析

    Step 1 构建参考序列索引 xff1a mkdirbti 在 stuXX 目录下新建文件夹 cd bti ln s database peixun2015 ref ath fa 在当前目录 xff0c 建立参考序列文件的超链接 bowt
  • maddpg 复现过程中遇到的问题

    最近在复现论文Multi Agent Actor Critic for Mixed Cooperative Competitive Environments https github com openai multiagent partic
  • "error while loading shared libraries: xxx.so.x" 错误的原因和解决办法

    一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误 比如 tmux error while loading shared libraries libevent 1 4 so 2 cannot open shared o
  • SUN VirtualBox 的命令行启动/关闭方法简介

    我们可以使用VBxManager 命令行管理工具来查看当前的虚拟基设置 和状态 QHo 64 qhoferrari1k VBoxManage list vms 下面通过实例来说明如何从命令行启动和关闭VirtualBox 虚拟机的两种常用方
  • 运维日记011 - Ubuntu下更改初始用户名的方法

    运维日记011 Ubuntu下更改初始用户名的方法 引子 Ubuntu每两年一次发布的LTS版本都会倍加引人关注 xff0c 因为LTS版本有长达五年的支持周期 xff0c 对于我等不是太喜欢折腾尝鲜而是希望几年之内不用重装系统的用户颇有吸
  • SWIG学习记录(一)SWIG基础

    SWIG学习记录 1 什么是SWIG 1 2 特性1 2 1 预处理 2 SWIG安装3 SWIG基础介绍3 1 运行SWIG3 1 1 输入格式3 1 2 输出3 1 3 注释3 1 4 预编译3 1 5 SWIG指令3 1 6 解析器的
  • Cpp--重载全局的new和delete

    include lt iostream gt include lt process h gt include lt string h gt include lt stdio h gt define MAX SIZE 30000 char M
  • 国外知名音频库一站式资料和简介

    Speex Speex http blog csdn net xyz lmn article details 8013490 简介 Speex是一套主要针对语音的开源免费 xff0c 无专利保护的音频压缩格式 Speex工程着力于通过提供一
  • 一张图进阶 RocketMQ - 整体架构

    前 言 三此君看了好几本书 xff0c 看了很多遍源码整理的 一张图进阶 RocketMQ 图片链接 xff0c 关于 RocketMQ 你只需要记住这张图 xff01 如果你第一次看到这个系列 xff0c 墙裂建议你打开链接 觉得不错的话
  • LUbuntu装向日葵后不能自动登录,lightdm改回sddm

    最近换了LUbuntu xff0c 很喜欢它简洁快速的风格 装了向日葵远控 xff0c 然后就不能登录桌面了 台式机上 xff0c 还可以手动登录 xff0c 笔记本手动也不行 xff0c 得开一个终端输入startx 研究了下 xff0c
  • 牛人 就是这样锤炼出来的,中兴资深工程师,嵌入式专家韦东山是这样炼成的!

    导读 xff1a 还在大学的你 xff0c 不知道未来何去何从 xff1f 都说迷茫是大事做不了 xff0c 小事不想做 还在做程序袁的你 xff0c 是不是也想创业 xff1f 程序袁好创业吗 xff1f Linux好学吗 xff1f 学
  • ethtool---查看网卡以及修改网卡配置工具

    ethtool 命令详解 命令描述 xff1a ethtool 是用于查询及设置网卡参数的命令 使用概要 xff1a ethtool ethx 查询ethx网口基本设置 xff0c 其中 x 是对应网卡的编号 xff0c 如eth0 eth
  • 开源网络模拟器ns-3 架构与实践

  • KBQA相关知识

    码下来 xff0c 慢慢看 xff0c 谢谢各位的分享 1 小象学院 xff1a 王昊奋 2 总结 xff1a https cloud tencent com developer article 1088066 3 KBQA入门 xff1a
  • Android system.img 编辑、增删APK与修改系统配置

    1 环境配置 Debian或Ubuntu系统 xff0c 配置Android开发工具 apt get update apt get install android tools adb android tools fastboot andro
  • SpringMVC接收json字符串转为List对象(数组对象)

    本来项目中的springmvc已配置好的 xff0c 没有问题 xff0c 但是今天突然有个需求 xff0c 需要写一个接口接收json字符串自动转换为List对象 xff0c 查了一下用 64 RequestBody就可以 xff0c 但
  • Lottie 集成动画缺失部分 解决方法

    首先附上Lottie iOS的地址 xff0c 集成方式参见README Lottie 在集成Lottie的时候首先第一步是熟悉基本使用 首先将美工给的JSON文件导入到工程 xff08 本人通过此文顺利指导公司美工导出JSON xff0c