您絕對不應該撥打[super loadView]
。我會說你在ZoomingPDFViewer例子中發現了一個bug。
當您想以編程方式爲視圖控制器(不使用xib)創建視圖層次結構時,您覆蓋loadView
。
正如您所指出的,文檔明確指出您不應該調用super。
此方法的自定義實現不應調用超級。
我假定這是爲了避免裝載無論從XIB和編程創建視圖,作爲該方法中所使用的基體到從XIB加載的圖:
如果視圖控制器具有一個關聯的nib文件,此方法從nib文件加載 視圖。
還要注意的是,即使你UIViewController
對象的分配過程中傳遞零的nibNameOrNil參數的UIViewController
實施loadView
將嘗試加載任何廈門國際銀行與它相關聯的類名。
視圖控制器具有相關聯的筆尖文件,如果nibName屬性 返回一個非零值,如果視圖控制器是從故事板實例 ,如果顯式使用所分配的其一個筆尖 文件發生initWithNibName:bundle:method,,或者如果iOS在應用程序包中找到一個帶有基於視圖控制器的 類名的名稱的筆尖 文件。如果視圖控制器沒有關聯的筆尖 文件,則此方法會創建一個普通的UIView對象。
這種方法的真正意圖是給你建立視圖層次的完全控制,而不依賴於內置的廈門國際銀行加載機制:
您可以覆蓋此方法,以創建手動查看。
就個人而言,我重寫loadView
,如果:1)我會做它的廈門國際銀行真是小巫見大巫或2)控制的佈局是非常動態的,所以創造了廈門國際銀行與靜態佈局有什麼好處。
來源
2012-03-05 16:05:10
Sam
+1標記的長度連同清晰/簡潔...... – Damo 2012-03-05 16:41:45