加载视图第一次调用awakeFromNib时,我想通过方法再次调用awakeFromNib。
我试过[view setNeedsDisplay:YES]; 但它没有再次调用awakeFromNib
任何人都可以建议为什么不调用awakeFromnib 在此先感谢...
答案 0 :(得分:0)
setNeedsDisplay:YES
用于重绘不调用awakeFromNib的视图。
您可以将[self awakeFromNib];
的所有代码移动到其他方法,并在需要重新启动时从awakeFromNib中调用它们。
答案 1 :(得分:0)
问题比修复awakeFromNib更大。真正的问题是NSViewController中没有方法告诉控制器何时加载视图。我通常做的是扩展NSViewController并添加controllerHasFocus方法。处理交换视图的类将发送controllerHasFocus。然后它会像iOS中的viewDidLoad一样。如果你在SO上搜索它们,有很多讨论可能比我更好地解释了这一点。