請考慮在故事板文件中有一個對象鏈接到IBOutlet
(如下所示)的情況。Alloc-init UIStoryboard中的對象
@property (nonatomic, strong) IBOutlet UIImageView *imageView;
左到它自己的設備中,ViewController
將愉快地加載並顯示正確的圖像正確的幀等的內部,如在界面生成器確定的。 但是,如果將以下代碼添加到視圖控制器的方法viewDidLoad
方法中,則會獲得(顯然)相同的結果。
- (void)viewDidLoad {
_imageView = [[UIImageView alloc] init];
//...
}
這是否意味着IBOutlets
的編程式alloc-initing是完全可選的?或者是增加這條線實現稍微不同的結果?
我在問,因爲我總是在實現中添加alloc-init,然後在我最近的項目中我忘了它,但令我驚訝的是,它仍然完全按照預期工作。
如果我是正確的,你不需要分配init。當你從筆尖加載時,它通常會爲你做。 – iDev