如何在类文件中为UIView设置动画?

时间:2017-05-22 15:56:10

标签: ios swift uiview

我正在开发一个用户点击添加电台的应用程序,从那里会出现一个弹出窗口,要求用户提供相应的信息,UIView将会动画,但我无法让它工作在其单独的文件中。

以下是Animations.swift文件中的代码。

import Foundation
import UIKit

class Animations: UIView {

    func animatePopUpIn(view: UIView, controller: UIViewController) {

        controller.view.addSubview(view)
        view.center = center

        view.transform = CGAffineTransform.init(scaleX: 1.3, y: 1.3)
        view.alpha = 0

        UIView.animate(withDuration: 0.4) {
            controller.view.alpha = 1
            controller.view.transform = CGAffineTransform.identity
        }

    }

}

以下是StationController.swift文件的代码。

import UIKit

class StationController: UIViewController {

    @IBOutlet var addStationView: UIView!
    var animation = Animations()


    override func viewDidLoad() {
        super.viewDidLoad()

        navigationItem.title = "Stations"
    }

    @IBAction func addStationTapped(_ sender: Any) {

        animation.animatePopUpIn(view: addStationView, controller: self)
        print("Displayed Pop Up")
    }


    @IBAction func dismissPopUpTapped(_ sender: Any) {


    }


}

由于某些原因,在点击addStationTapped时没有任何显示,任何帮助都会很好,因为我对以这种方式使用类很新。提前谢谢。

1 个答案:

答案 0 :(得分:0)

另一个更好的方法是通过制作单独的viewcontroller并将其添加为popover来实现。您可以使用第三方类或手动添加视图控制器作为弹出窗口。如果你想手动添加它,那么我可以提供帮助。