使用不同的SWIFT文件相同的ViewController?
我在我的应用程序中有一个布局保持不变,除了图像会根据在上一个视图中按下哪个button而有所不同。 我想要做的是设置它,如果btn1被按下的用户它进入下一个视图,但然后VCfile1.swift被使用,如果用户按btn2然后他被带到下一个视图和VCFile2.swift被使用在storyboard中创build相同的viewcontroller。 我怎么能做到这一点? (我不知道这是否是正确的方法,但如果不是,请build议)
Swift 3,Xcode 8
首先:如果你需要100个UViewController
,所有的视图都是一样的,那么你做错了什么。
要在不同的ViewController(.swift)类中重复使用相同的视图,您可能需要创buildUIView
作为XIB
并以编程方式在您的ViewControllers中重新使用它。
-
为您的视图创build一个类:
类MyView:UIView {//}
-
创build一个
XIB
文件(新build – >文件 – >视图)MyView.xib
,将其类设置为MyView
并根据需要进行自定义。 -
创build一个实例,并在你的
UIViewControllers
使用它:class MyViewController: UIViewController { var myView: MyView? override func viewDidLoad() { super.viewDidLoad() myView = UINib(nibName: "MyView", bundle: nil).instantiate(withOwner: self, options: nil).first as? MyView view.addSubview(myView!) // You might want to set constraints here } }