Utiliser différents files swift pour le même ViewController?

J'ai une layout dans mon application qui rest la même à part les images qui vont différer selon le button qui est pressé dans la vue précédente. Ce que je pensais faire est de le mettre à cela si btn1 est pressé l'user il a pris à la vue suivante, mais VCfile1.swift est utilisé et si l'user appuie sur btn2 alors il est pris à la vue suivante et VCFile2.swift est utilisé pour le même viewcontroller créé dans le storyboard. Comment pourrais-je y parvenir? (Je ne suis pas sûr que ce soit la bonne méthode mais si ce n'est pas le cas, conseillez-moi)

Swift 3, Xcode 8

Premièrement: Si vous avez besoin de 100 UViewController , tous avec la même vue, vous faites quelque chose de mal.

Pour réutiliser la même vue dans différentes classs ViewController (.swift), vous pouvez créer votre UIView tant que XIB et (ré) l'utiliser dans vos ViewControllers par programmation.

  • Créez une class pour votre vue:

    class MyView: UIView {//}

  • Créez un file XIB (nouveau -> file -> View) MyView.xib , définissez sa class sur MyView et personnalisez-la selon vos besoins.

  • Créez une instance et utilisez-la dans vos 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 } }