Lottie 动画没有出现 iOS
Posted
技术标签:
【中文标题】Lottie 动画没有出现 iOS【英文标题】:Lottie Animation Not Appearing iOS 【发布时间】:2019-03-20 19:23:32 【问题描述】:我更新到Lottie
的最新版本 (3.0) 并注意到迫使我更改代码的各种变化。
以前,我希望能够通过storyboard
定位动画,为此,我使用了LOTAnimatedControl
,然后在代码中访问了控件的animationView
以通过LOTAnimatedControl.animationView.setAnimation(named: "x")
设置动画。
现在看来这根本不可能。
那时我认为我能做的是..
1. 在情节提要中设置uiview
出口。
2.子视图AnimationView
在代码中初始化。
3.通过AnimationView.animation = Animation.named("name")
设置动画
我都设置好了,但是运行时看不到动画。在调试中,我看到Animation.named("x")
打印为零,但不知道为什么。我删除了名称中的 .json 扩展名,而 .json 文件正是它之前工作时的位置。
欢迎任何想法。以下是我的设置。
@IBOutlet weak var activityIndicatorView: UIView!
let activityIndicator = AnimationView()
activityIndicatorView.addSubview(activityIndicator)
NSLayoutConstraint.activate([
activityIndicator.centerXAnchor.constraint(equalTo: activityIndicatorView.centerXAnchor),
activityIndicator.centerYAnchor.constraint(equalTo: activityIndicatorView.centerYAnchor),
activityIndicator.widthAnchor.constraint(equalToConstant: activityIndicatorView.frame.width),
activityIndicator.heightAnchor.constraint(equalToConstant: activityIndicatorView.frame.height)
])
let animation = Animation.named("name")
activityIndicator.animation = animation
activityIndicator.isHidden = false
activityIndicator.loopMode = .loop
activityIndicator.play()
【问题讨论】:
【参考方案1】:你需要
activityIndicator.translatesAutoresizingMaskIntoConstraints = false
正确添加编程约束
【讨论】:
【参考方案2】:仍然不知道为什么我在遵循快速入门 lottie ios 文档时得到了 nil,但我的解决方法是初始化 AnimationView
,我只是将它与初始化时的实际动画捆绑在一起 - AnimationView(name: "name")
。
【讨论】:
以上是关于Lottie 动画没有出现 iOS的主要内容,如果未能解决你的问题,请参考以下文章
仅在 xcode for ios 的 react native 项目中使用 lottie 的自定义动画启动屏幕 [关闭]