В UIView iOS не работает лотерейная анимация - PullRequest
0 голосов
/ 07 июня 2018

это мой Viewcontroller

 class ViewController: UIViewController {

        var index = 0
        @IBOutlet weak var lottieView: UIView!
        fileprivate let lottieTouchIdAnimationName = "01_touchId_validation"
        fileprivate let lottieFaceIdAnimationName = "01_faceId_validation"
         @IBOutlet weak var label: UILabel!
        var onBoardingCompletionBlock: ((Bool, Bool?) -> Void)?
        var authenticationResponse: Bool!


        override func viewDidLoad() {
            super.viewDidLoad()

            setupView()
        }


        func setupView() {

            var animationName = ""
            switch index {
            case 0:
                animationName = lottieFaceIdAnimationName
                label.text = "anim 0"
            default:
                animationName = lottieTouchIdAnimationName
                label.text = "anim 1"
            }

            _ = LottieView(in: lottieView,
                           bundle: Bundle.main,
                           name: animationName,
                           velocity: 1.0,
                           loop: false) {[unowned self] _ in
                            self.animationEnded()
            }
        }
        func animationEnded() {
            if let onBoardingCompletionBlock = onBoardingCompletionBlock {
                onBoardingCompletionBlock(true, self.authenticationResponse)
                dismiss(animated: true, completion: nil)
            } else {

            }
        }
    }

раскадровка со всеми подключенными розетками:

enter image description here

У меня установлен модуль, и все ресурсы доступны в XCAssets

1 Ответ

0 голосов
/ 06 сентября 2018

Попробуйте это:

class HmePaymentStatusVC: UIViewController {
    var animationView = LOTAnimationView(name: "lottie_animation_file")

    override func viewDidLoad() {
        super.viewDidLoad()
        animate()
    }

    func animate() {
        animationView.frame = view.bounds
        animationView.contentMode = .scaleAspectFit
        animationView.animationSpeed = 0.5
        self.view.addSubview(animationView)
        animView.play()
    }
}
...