xib的问题

2022-04-14  本文已影响0人  大亮code

1.view 适合和 xib进行绑定,想要绑定的思路很简单,就是在xib中设置它的class 和类相同就行了
view绑定xib可以通过两种方式新建xib:
a.通过xcode的的view选项


Snip20220414_12.png

这里需要做的就是绑定,绑定的意义的在代码中和xib中的东西可以同时生效,不绑定只有xib中的东西可以生效.不绑定下面的开关就不会出现.

  - (void)awakeFromNib {
    [super awakeFromNib];
    UISwitch *swi = [[UISwitch alloc]initWithFrame:CGRectMake(20, 20, 50, 40)];
    [self addSubview:swi];
}

还可以通过空的xib文件来创建呢


Snip20220414_13.png

创建完后只需要将当前xib中的View绑定一个类

Snip20220414_14.png

特别注意的是这里不需要设置File owner的类型,因为他不是用来描述控制器的view

加载 view 加载xib的方法是:

UINib *nib = [UINib nibWithNibName:NSStringFromClass(self) bundle:nil];
    BlueView *view = [nib instantiateWithOwner:nil options:nil].firstObject;
  1. UIViewController 天然和StoryBoard 适合,要想绑定也很简单,就是设置控制器的class 和类相同就可以
[[UIStoryboard storyboardWithName:NSStringFromClass([TwoViewController class]) bundle:nil] instantiateViewControllerWithIdentifier:@"TwoViewController"]
  1. 如果UIViewController 的View 需要和xib 中View 绑定,要做两件事:
    a.设置File owner 的customClass 为 viewController 的class 类型.


    Snip20220414_6.png

b. 将viewController 的view 与当前的view 连线


Snip20220414_7.png

当前的view仍然可以代码绑定.


Snip20220414_8.png
Snip20220414_11.png
上一篇下一篇

猜你喜欢

热点阅读