我正在使用Swift开发iOS通用应用程序,使用自动布局功能,并且仅支持纵向模式。
我发现UIViewController.viewDidLayoutSubviews打过多次。而是viewDidLoad在启动MyApp时仅被调用一次UIViewController。
UIViewController.viewDidLayoutSubviews
viewDidLoad
UIViewController
为什么要viewDidLayoutSubviews多次调用?是否会按顺序对每个UIView(UIButtons,UITextFields等)进行约束?
viewDidLayoutSubviews
UIView
UIButtons
UITextFields
任何信息将不胜感激。
LoadView 仅被调用一次:需要加载视图时。
LoadView
LayoutSubviews,但是,每个运行循环都会在已存在setNeedsLayout或已对其setNeedsDisplayInRect调用的任何视图上调用一次- 这包括每当将子视图添加到视图,滚动,调整大小等时。
LayoutSubviews
setNeedsLayout
setNeedsDisplayInRect