IOS 雜筆-14(被人遺忘的owner),ios-14
*owner在開發中現在已經很少用了 有興趣的童鞋可以看看*
我們遇到owner通常是在類似
[[[NSBundle mainBundle] loadNibNamed:@"Food" owner:nil options:nil]lastObject ]中遇到的。
我們一般的做法是直接把owner設定為self(通常是咋自訂cell時)。
但是在定義其他控制項時我們就需要想一想為什麼,或者還有什麼需要注意的。
下面我開始對owner進行介紹。
先仔細觀察下面gif的內容:
不難發現,我在努力的拖空間就是不成功,這是為什麼呢???
接下來看下面的gif
我們拖控制項成功(注意*這裡就是為什麼現在用owenr的越來越少,因為耦合行套高,不適於提高編碼效率)
簡單的應用:
//// ViewController.m// CX 被人遺忘的owner//// Created by ma c on 16/3/26.// Copyright © 2016年 xubaoaichiyu. All rights reserved.//#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIButton *foodOne;@property (weak, nonatomic) IBOutlet UIButton *foodTwo;@end@implementation ViewController- (IBAction)foodOneAction:(id)sender { NSLog(@"foodOne"); }- (IBAction)foodTwoAction:(id)sender { NSLog(@"foodTwo");}- (void)viewDidLoad { [super viewDidLoad]; self.view = [[[NSBundle mainBundle] loadNibNamed:@"Food" owner:self options:nil]lastObject ];}@end