使用GIF的动画启动屏幕

时间:2019-07-29 16:50:57

标签: swift

打开应用程序后,我希望在启动屏幕中打开动画GIF。我已经使用SwiftyGif做到了这一点,但是我想在AppDelegate中做到这一点。我现在在任何班级都在使用它。我想在AppDelegate上使用它。

MAINVİEW

extension MainTableViewController: SwiftyGifDelegate {
    func gifDidStop(sender: UIImageView) {
        logoAnimationView.isHidden = true
    }
}

class MainTableViewController: UITableViewController {
   let logoAnimationView = LogoAnimationView()

    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        logoAnimationView.logoGifImageView.startAnimatingGif()
    }

    override func viewDidLoad() {
        super.viewDidLoad()
 view.addSubview(logoAnimationView)
        logoAnimationView.pinEdgesToSuperView()
        logoAnimationView.logoGifImageView.delegate = self
}
}

LOGOANIMATIONVİEW

import UIKit
import SwiftyGif

class LogoAnimationView: UIView {

    let logoGifImageView: UIImageView = {
        guard let gifImage = try? UIImage(gifName: "giphy.gif") else {
            return UIImageView()
        }
        return UIImageView(gifImage: gifImage, loopCount: Int(2.0))
    }()

    override init(frame: CGRect) {
        super.init(frame: frame)
        commonInit()
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        commonInit()
    }

    private func commonInit() {
        backgroundColor = UIColor(white: 246.0 / 255.0, alpha: 1)
        addSubview(logoGifImageView)
        logoGifImageView.translatesAutoresizingMaskIntoConstraints = false

        logoGifImageView.snp.makeConstraints { (make) in
            make.top.equalTo(250)
            make.height.equalTo(250)
            make.width.equalTo(UIScreen.main.bounds.width)
            make.centerX.equalTo(UIScreen.main.bounds.size.width*0.5)
        }

        //logoGifImageView.centerYAnchor.constraint(equalTo: centerYAnchor).isActive = true

    }
}

2 个答案:

答案 0 :(得分:1)

我认为这不可能。启动屏幕是静态图像。

您的代码要等到应用程序完成加载后才能真正运行,因此您无法在启动屏幕中制作动画。

答案 1 :(得分:0)

您无法在iOS Native Application中的启动屏幕上执行任何操作。您可以选择其他方式,例如在启动屏幕后可以加载动画。检查下面的应用程序。