如何使用 FLAnimatedImage 只 运行 我的 gif 一次?
How can I run my gif only once using FLAnimatedImage?
我正在使用 xcode 10.1 和 swift 4.2,我有一张用 Photoshop 制作的 gif,它在浏览器和 android 工作室中播放了一次。
但是当我将它导入 xcode 并在情节提要中单击它时,它会一直播放。它还在我的虚拟模拟器中播放了几次。
我正在创建一个 IOS 网络视图应用程序,我想在我的启动画面中播放一次这个 gif 并在最后一帧停止,直到我的网络视图加载。
我正在使用 FLAnimatedImage,我发现了一个与我的类似的问题,但我找不到我的解决方案。这就是为什么我再次问。
我不想更改主库文件,因为我有另一个 gif,我想永远播放它。所以我只需要在最后一帧停止第一个gif。
你可以看到我的一小部分代码:
@IBOutlet var LogoView: FLAnimatedImageView!
LogoView.contentMode = UIView.ContentMode.scaleAspectFit
LogoView.frame = CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height)
LogoView!.autoresizingMask = [.flexibleWidth, .flexibleHeight]
let imageData = try! Data(contentsOf: Bundle.main.url(forResource: "logo_gif", withExtension: "gif")!)
LogoView.animatedImage = FLAnimatedImage(animatedGIFData: imageData)
提前致谢:)
您可以使用以下库。
https://github.com/wangjwchn/AImage
let image = AImage(url: Bundle.main.url(forResource: "test", withExtension: "gif")!)
/* Create AImageView */
let imageview = AImageView(frame:CGRect(x: 0.0, y: 50.0, width: 380.0, height: 212.0))
/* Add AImage to AImageView */
imageview.add(image: image!)
/* Start displaying animated image */
imageview.play = true
...
...
/* Stop displaying animated image */
imageview.play = false
当你想让它开始时传递 true 来播放 属性,当你想停止时传递 false。
您也可以从情节提要中使用此 AImageView class,从 class 检查器将 UIImageView 更改为 AImageView。
你可以给你的imageView一个loopCompletionBlock
self.imageView.loopCompletionBlock = {_ in
self.imageView.stopAnimating()
}
我正在使用 xcode 10.1 和 swift 4.2,我有一张用 Photoshop 制作的 gif,它在浏览器和 android 工作室中播放了一次。 但是当我将它导入 xcode 并在情节提要中单击它时,它会一直播放。它还在我的虚拟模拟器中播放了几次。
我正在创建一个 IOS 网络视图应用程序,我想在我的启动画面中播放一次这个 gif 并在最后一帧停止,直到我的网络视图加载。
我正在使用 FLAnimatedImage,我发现了一个与我的类似的问题,但我找不到我的解决方案。这就是为什么我再次问。
我不想更改主库文件,因为我有另一个 gif,我想永远播放它。所以我只需要在最后一帧停止第一个gif。
你可以看到我的一小部分代码:
@IBOutlet var LogoView: FLAnimatedImageView!
LogoView.contentMode = UIView.ContentMode.scaleAspectFit
LogoView.frame = CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height)
LogoView!.autoresizingMask = [.flexibleWidth, .flexibleHeight]
let imageData = try! Data(contentsOf: Bundle.main.url(forResource: "logo_gif", withExtension: "gif")!)
LogoView.animatedImage = FLAnimatedImage(animatedGIFData: imageData)
提前致谢:)
您可以使用以下库。
https://github.com/wangjwchn/AImage
let image = AImage(url: Bundle.main.url(forResource: "test", withExtension: "gif")!)
/* Create AImageView */
let imageview = AImageView(frame:CGRect(x: 0.0, y: 50.0, width: 380.0, height: 212.0))
/* Add AImage to AImageView */
imageview.add(image: image!)
/* Start displaying animated image */
imageview.play = true
...
...
/* Stop displaying animated image */
imageview.play = false
当你想让它开始时传递 true 来播放 属性,当你想停止时传递 false。
您也可以从情节提要中使用此 AImageView class,从 class 检查器将 UIImageView 更改为 AImageView。
你可以给你的imageView一个loopCompletionBlock
self.imageView.loopCompletionBlock = {_ in
self.imageView.stopAnimating()
}