完整项目代码见Github:gaozichen2012/lottie-ios-test
目录前言0 准备工作1 Xcode新建SwiftUI项目2 通过CocoaPods安装Lottie(二选一)2 通过SPM安装Lottie(二选一)第一步:File→Swift Packages→Add第二步:添加第三方库的链接第三步:设置项目的Dead Code Stripping3 添加一个JSON格式的Lottie动画4 添加文件LottieView.swift5 修改文件ContentView.swift6 测试前言更多技术整理,欢迎关注本人博客www.tomtwos.com在本文中,我将向你
适用于
iOS,macOS(以及和 )的
Lottie
在查看文档,常见问题解答,帮助,示例等
Lottie是适用于Android和
iOS的移动库,它以最少的代码实时本地渲染基于矢量的
动画和艺术作品。
Lottie加载并渲染以bodymovin JSON格式导出的
动画和矢量。 Bodymovin JSON可以通过使用After Effects,使用进行以及从创建和导出。
第一次,设计人员可以创建和发布精美的
动画,而无需工程师费心地手工制作。 由于
动画由JSON支持,因此它们的尺寸非常小,但是复杂性却很大! 可以播放,调整大小,循环播放,加快,放慢,倒转甚至是交互式地擦洗
动画。
Lottie也可以播放或循环播放一部分
动画,可能性无穷无尽! 甚至可以在运行时以各种方式更改
动画! 更改颜色,位置或任何关键的值!
Lottie还支持开箱即用的本机UIViewController转换!
这只是洛蒂力量的一小部分
Lottie支持和 (动态和静态)。
Lottie用Swift 4.2编写。
Github回购
您可以拉出存储库,并包含
Lottie.xcodeproj来构建动态或静态库。
如何在软件开发的道路上更进一步?
我们可能已经在研发的这条道路上持续了5年,甚至更久的时间,如何才能拉开和大众的距离,让自己的工作能力提升一步?架构设计应该是其中一个方向,大到app整个的设计,小到每一个页面、功能,都需要设计。这篇文章根据我的研发经验谈一谈App的架构设计。
一、代码需要可读性
可读性是十分必要的,我们甚至可以在一个UIViewController中完成一个APP的所有功能,它可能有几万行,几十万行代码,该怎么维护,怎么读,写的时候只有你和天明白是怎么回事,过了几天就只有天知道代码为什么
命运之轮命运之轮:ferris_wheel:(使用SwiftUI构建的cocoapods库)支持动态内容。
Sameer Nawaz的《:red_heart:Love Made Made in Love:red_heart:》-命运之轮命运之轮:ferris_wheel:是使用SwiftUI构建的cocoapods库,支持动态内容。
Sameer Nawaz的Made with love:red_heart:Preview-Spin WheelWheelExample要运行示例项目,请克隆存储库,然后首先从Example目录运行pod install。
安装FortuneWheel可通过CocoaPods获得。
要安装它,只需在您的Podfile中添加以下行:pod'FortuneWheel'在您的类中导入Fortune Wheel导入FortuneWheel示例代码
SwiftUI最好的下拉刷新组件推进
《SwiftUI 下拉菜单支持List版和ScrollView版 (教程含源码) UIScrollView UIRefreshControl 》
基础文章推荐
《SwiftUI是什么,听听大牛们如何说》
经典教程推荐
更新近百篇SwiftUI教程《SwiftUI2020教程》
帮您突破数据存储难关《SwiftUI vs CoreData数据存储解决方案》
《WWDC2020专栏》
《SwiftUI WWDC2020 新增组件列
什么是
Lottie
Lottie是一种小型,高质量,交互式的开源
动画文件格式,可以在运行时进行操作。App Store上排名前500的应用程序现在都使用
Lottie吸引用户并提高转化率。
Lottie的目标是尽可能支持尽可能多的After Effects功能,以提供比简单图标
动画更多的功能。我们创建了一些其他示例,以展示库的灵活性,丰富性和深层的功能集。在示例应用程序中
图片来源:developer.apple.comSwiftUI
更好的应用,更少的代码。
SwiftUI是一种创新、简单的iOS开发中的界面布局方案,可以通过Swift语言的强大功能,在所有的Apple平台上快速构建用户界面。 仅使用一组工具和API为任何Apple设备构建用户界面。
SwiftUI具...
看完本文您将掌握的技能
创建页面视图:
要创建页面视图,我们将TabView与PageTabViewStyle一起使用。我们将跟踪可见选项卡到变量,以便我们可以将页面操作同步到可滚动选项卡,反之亦然。
struct PageView: View {
@Binding var selection: Int
let dataModel: [String]
var b
第三章: 用Swift语言和SwiftUI框架创建你的第一个app
到目前为止, 你应该对xcode工具和swift语言有所了解,如果你没看过前面2节, 建议先看看,这章,会深入了解一下SwiftUI 框架特性
1. 构建第一个app
File->New->Project选择iOS–>App
下一步, 工程名,命名为 HelloWorld
其中organization identifier可以填写比较个性的定义,或者如果有你网站,可以填写网站域名,然后点Next, xcode会提示
关于 Swift
Swift使我们在编写ios软件时要用到的编程语言,在苹果发布 Swift语言之前,开发ios软件使用Objective-C语言,但这门语言比较晦涩难懂。不少刚开始接触ios开发的小伙伴都会觉得Objective-C在代码编写以及阅读上非常不方便。
Swift 被大家公认为是一款非常优雅的语言!
关于 SwiftUI
SwiftUI 使在所有 Apple 上构建用户界面
Lottie
除了Lottie和我们刚刚做的图像序列方法,我们还可以使用GIF,视频,甚至可以使用贝塞尔路径或者UIView动画功能的组合来实现。但是Lottie是相对来说比较好的方式,将Lottie和其他方式对比。
PNG序列图像
PNG序列图形的最大缺点之一是它们的尺寸相当大,这使得它们在不同的界面上导出和操作有些麻烦。
相比之下,Lottie文件非常小,大小也很方便,因此下载速度很快,并尽可能保持网站或应用程序运行的流畅。
GIF格式
虽然比PNG图形小,但gif仍然是一种非常占用空间的格式,平均尺寸