加载视图时第一次调用 awakeFromNib,但我想通过方法再次调用 awakeFromNib。
我试过 [查看 setNeedsDisplay:YES];但它没有再次调用 awakeFromNib
任何人都可以建议为什么不调用 awakeFromnib 提前谢谢...
加载视图时第一次调用 awakeFromNib,但我想通过方法再次调用 awakeFromNib。
我试过 [查看 setNeedsDisplay:YES];但它没有再次调用 awakeFromNib
任何人都可以建议为什么不调用 awakeFromnib 提前谢谢...
问题比仅仅修复 awakeFromNib 更大。真正的问题是 NSViewController 中没有方法告诉控制器何时加载视图。我通常做的是扩展 NSViewController 并添加一个 controllerHasFocus 方法。处理交换视图的类将发送 controllerHasFocus。然后它的行为类似于 iOS 中的 viewDidLoad。如果您在 SO 上搜索它们,有许多讨论可能比我更好地解释了这一点。
setNeedsDisplay:YES
用于重绘不调用 awakeFromNib 的视图。
您可以将所有代码[self awakeFromNib];
移至其他方法,并在您想重新启动时从 awakeFromNib 调用这些代码。