IOS 杂笔-14(被人遗忘的owner)

Posted 旭宝爱吃鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 杂笔-14(被人遗忘的owner)相关的知识,希望对你有一定的参考价值。

*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

 

以上是关于IOS 杂笔-14(被人遗忘的owner)的主要内容,如果未能解决你的问题,请参考以下文章

IOS 杂笔-13(appearance的巧妙使用)

IOS 杂笔-17(堆区栈区等)

IOS 杂笔-8(loadViewviewDidLoadviewWillAppearviewDidAppear等简介)

IOS杂笔- 7(类方法load与initialize的区别 浅析)

IOS 杂笔-12(类别de巧用 有便于Frame的操作)

IOS杂笔- 7(类方法load与initialize的区别 浅析)