使用UIAppearance时,是否可以仅定位视图控制器的根视图?我想从我的应用程序委托中为我的所有控制器设置setBackgroundColor,但是想要仅定位视图控制器上的直接视图。感谢。
详细说明,每个UIViewController子类都有自己的UIView对象,您可以通过其view属性调用它。这就是你在故事板中放置任何东西的视图,如UITableView,UITabBar等。我希望代理仅适用于该直接视图,因为UIKit中的所有内容都是UIView的子类。
这样做的目的是集中控制我的视图控制器外观。我发现也许我应该只使用UIViewController的子类,但我觉得让另一个地方去做我刚刚描述的事情仍然很酷。
答案 0 :(得分:0)
不幸的是,您无法使用外观代理完成此操作。但是,如果您使用swift并从故事板或nib加载视图控制器,那么一个解决方案是扩展UIViewController并覆盖awakeFromNib,如下所示:
extension UIViewController {
open override func awakeFromNib() {
super.awakeFromNib()
view.backgroundColor = UIColor.blue
}
}