簡體   English   中英

loadView:UIView iOS中的函數

[英]loadView: functions in UIView iOS

我不明白loadView: function的機制(這個函數在UIView中)。

我創建了一個項目如下:

  • 首先,我創建了一個iPhone的基於窗口的項目。
  • 然后,我創建了一個UIView子類
  • 接下來,我創建了一個UIViewController子類,沒有xib。
  • 最后,在我在第三步中創建的類的loadView:函數中,我將UIView對象(在我在第二步中創建的類)指定為UIViewController對象的視圖變量(在第三步中)。

如果我省略了最后一步,並放置語句NSLog(@"test LoadView"); 在loadView:函數中,然后在項目運行時,聲明NSLog(@"test LoadView"); 連續調用,導致運行溢出。

請解釋一下! 謝謝!

loadView:僅在view屬性為nil時調用。 以編程方式創建視圖時使用此選項。 default:創建一個沒有子視圖的UIView對象。 對於前 -

- (void)loadView 
{ 
    UIView *view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame]; 
    [view setBackgroundColor:color]; 
    self.view = view; 
    [view release]; 
}

通過實現loadView:方法,您可以掛鈎到默認的內存管理行為。 如果內存不足,視圖控制器可能會收到didReceiveMemoryWarning消息。 默認實現檢查視圖是否正在使用中。 如果其視圖不在視圖層次結構中,並且視圖控制器實現了loadView:方法,則會釋放其視圖。 稍后當需要視圖時,再次調用loadView:方法來創建視圖。

不確定為什么要使用loadView:但是你可以在viewDidLoad:做同樣的事情viewDidLoad:

參考 -

  1. 為什么這個iPhone程序沒有調用-loadView?
  2. 的loadView

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM