我注意到在使用Storyboard時,ViewController中的「 - (id)init」不會被執行。有沒有其他方法可以替代init,或者是否有強制開啓init的方法。「 - (id)init」在使用故事板時不會觸發ViewController
16
A
回答
37
嘗試使用
- (id)initWithCoder:(NSCoder*)aDecoder
{
if(self = [super initWithCoder:aDecoder])
{
// Do something
}
return self;
}
+1
我的印象是,initWithNibName沒有被調用的原因是因爲你沒有在故事板中使用nib文件。謝謝@NeverBe,initWithCoder也爲我跑。 – Ant 2012-10-03 14:17:45
+0
+1 for @Ant - 答案中的代碼是正確的解決方案,但錯過了解釋 - 然後將其解決。 – 2014-03-13 05:00:34
3
- (id)initWithNibName:(NSString *)nibName bundle:(NSBundle *)nibBundle
被稱爲替代。
如上面的註釋所示,您需要確定是否可能有更適合的方法來覆蓋。請記住,該視圖尚未加載到initWithNibName方法中,因此不要嘗試更改此處的任何內容。
相關問題
- 1. 當發生異常時,INIT方法不會觸發Application_Error事件
- 2. 來自非故事板ViewController的ViewController
- 3. WPF故事板事件沒有觸發
- 4. 爲什麼不在WPF中加載故事板事件不會觸發?
- 5. 使用UpdatePanel時事件不會觸發
- 6. 在故事板結束時觸發事件
- 7. 把一個UIScrollView在的ViewController(故事板)
- 8. IOS故事板:恢復ID就像故事板ID一樣?
- 9. wpf按鈕故事板觸發器
- 10. 通過故事板WPF幀觸發器
- 11. WPF數據觸發器和故事板
- 12. WPF XAML普遍故事板觸發
- 13. 故事板不會使按鈕動作
- 14. 故事板 - 在故事板中爲同一個ViewController創建多個視圖
- 15. 子類的ViewController從故事板
- 16. 故事板不會在XCode8中打開
- 17. 當使用故事板時觸發雙擊時避免單擊UIGestureRecognizer
- 18. 使用故事板
- 19. 故事板發行
- 20. 觸摸欄不顯示NSViewController故事板
- 21. javascript「beforeunload」事件不會觸發當我使用更新面板
- 22. 如何在使用故事板時獲取appDelegate中的viewController指針
- 23. 從UITableviewcell移動到一個ViewController,並使用故事板
- 24. 觸發屬性更改時故事板動畫未完成
- 25. 使用故事板似乎禁用觸摸事件?
- 26. ViewController init?
- 27. onTouch事件有時不會觸發ACTION_POINTER_DOWN
- 28. JS BeforeUnload事件有時不會觸發
- 29. 計時器事件不會觸發
- 30. Xcode 6故事板崩潰時滾動到特定的ViewController
你想做什麼?還有其他幾種方法:'-initWithNibName:bundle:','-viewDidLoad','-viewDidAppear:'等。根據你想要做什麼,其中一個可能是更好的選擇。 – user1118321 2012-02-09 18:57:22