我正在开发一个应用程序,在该应用程序上,用户单击以添加工作站,然后将出现一个弹出窗口,询问用户适当的信息,该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时,什么也不会出现,对于我以这种方式使用类的新手来说,任何帮助都是非常有用的。提前致谢。

最佳答案

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

关于ios - 如何从类文件中为UIView设置动画?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44117263/

10-12 00:19
查看更多