TVOS:无法使用 GIFU 框架显示 GIF
Posted
技术标签:
【中文标题】TVOS:无法使用 GIFU 框架显示 GIF【英文标题】:TVOS: Unable to display a GIF with GIFU framework 【发布时间】:2021-02-25 13:07:29 【问题描述】:我正在关注这个tutorial: 一开始,我没有显示 gif,而是显示一个红色的 UIView 方块,只是为了测试:
通过使用此代码:
import Gifu
import TinyConstraints
class GifViewController: UIViewController
lazy var loadingGif: UIView =
let view = UIView()
view.backgroundColor = .red
return view
()
override func viewDidLoad()
super.viewDidLoad()
setupViews()
fileprivate func setupViews()
view.backgroundColor = .blue
view.addSubview(loadingGif)
loadingGif.centerInSuperview()
loadingGif.width(300)
loadingGif.height(300)
在我添加 Gif 代码替换红色方块 UIVIEW 之后:
import Gifu
import TinyConstraints
class GifViewController: UIViewController
/*
lazy var loadingGif: UIView =
let view = UIView()
view.backgroundColor = .red
return view
()
**/
lazy var loadingGif: GIFImageView =
let view = GIFImageView()
view.contentMode = .scaleAspectFit
view.animate(withGIFNamed: "loading")
return view
()
override func viewDidLoad()
super.viewDidLoad()
setupViews()
fileprivate func setupViews()
view.backgroundColor = .blue
view.addSubview(loadingGif)
loadingGif.centerInSuperview()
loadingGif.width(300)
loadingGif.height(300)
这是结果: 如您所见,什么都没有出现,我不知道为什么。 这是存储在资产中的“loading.gif”: 我尝试使用不同的 GIF,但仍然没有出现。关于为什么没有出现的任何提示?
【问题讨论】:
【参考方案1】:我使用了另一个库,它就像一个魅力:
import SwiftGifOrigin
class GifViewController: UIViewController
lazy var loadingGif: UIImageView =
let view = UIImageView()
view.loadGif(asset: "cvs_loader")
view.contentMode = .scaleAspectFit
return view
()
override func viewDidLoad()
super.viewDidLoad()
setupViews()
fileprivate func setupViews()
view.backgroundColor = .blue
view.addSubview(loadingGif)
loadingGif.centerInSuperview()
loadingGif.width(175)
loadingGif.height(300)
【讨论】:
以上是关于TVOS:无法使用 GIFU 框架显示 GIF的主要内容,如果未能解决你的问题,请参考以下文章
在 SceneKit 中使用 GIFU 库播放 GIF 会导致应用程序 UI 冻结任何解决方案? UIView Animated 从后台线程调用
AppleTV - tvos - 使用本机和 TVMLKIT 的混合应用程序 - 无法返回本机应用程序