测试已测试 | ✓ |
语言语言 | Obj-CObjective C |
许可证 | MIT |
发布最后发布 | 2015年10月 |
由 ukitaka 维护。
依赖于 | |
ISMethodSwizzling | >= 0 |
方面 | >= 0 |
IBOutlets 在视图加载过程中初始化,因此在您尝试访问它们时不可访问。
在 UIViewController
中,afterViewDidLoad
保证在视图加载后立即调用块。如果 isViewLoaded 为 true,则立即调用块。
@IBOutlet weak var label: UILabel!
func configLabel(text: String) {
afterViewDidLoad {
self.label.text = text
}
}
afterViewDidLoadSafety
可用于更安全地执行。
guard let _ = try? afterViewDidLoadSafety({ self.label.text = text }) else {
preconditionFailure()
}
同样,afterAwakeFromNib
在 UIView 中也是可用的。
func configLabel(text: String) {
afterAwakeFromNib {
self.label.text = text
}
}
afterViewDidLoad
保证在调用 viewDidAppear:
后将调用块。例如,如果您在 viewDidAppear:
之前调用 presentViewController
,则在 Xcode 中将显示警告 "不建议在分离视图控制器上呈现视图控制器…"。
afterViewDidAppear
可以按如下方式使用
afterViewDidAppear {
self.presentViewController(vc, animated: true, completion: nil)
}
UILifeCycleClosure 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile:
pod "UILifeCycleClosure"
UILifeCycleClosure 在 MIT 许可下提供。有关更多信息,请参阅 LICENSE 文件。