Наследование поможет вам:
class BaseViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// your settings for all view controllers here:
self.view.backgroundColor = UIColor.lightGrayColor()
}
}
class HomeViewController: BaseViewController {
override func viewDidLoad() {
super.viewDidLoad() // call code from BaseViewController.viewDidLoad()
}
}
class ChatViewController: BaseViewController {
override func viewDidLoad() {
super.viewDidLoad() // call code from BaseViewController.viewDidLoad()
}
}
class ProfileViewController: BaseViewController {
override func viewDidLoad() {
super.viewDidLoad() // call code from BaseViewController.viewDidLoad()
}
}
Другой вариант Swift расширения:
extension UIViewController {
func configureView() {
self.view.backgroundColor = UIColor.lightGrayColor()
}
}
class HomeViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
configureView()
}
}
class ChatViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
configureView()
}
}
class ProfileViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
configureView()
}
}
Дополнительная информация о Inheritance и Extensions в книге Свифт
Просто хочу отметить очень быстро, что этот же метод можно также использовать с Objective-C. Это, вероятно, один из самых полезных и лучших секретов создания приложения очень быстро, используя программные представления. Об этом, как правило, никогда не говорили, не знаю почему, но я рад, что вы опубликовали этот ответ. Очень важные и полезные вещи, и это не ограничивается только UIViewControllers. – Loxx