xib和storyboard的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了xib和storyboard的区别相关的知识,希望对你有一定的参考价值。
storyboard:
- 重量级
- 用来描述整个App的多个软件
- User Interface -> Storyboard
xib:
- 轻量级
- 用来描述一个界面,通常是自定义控件
- User Interface -> Empty
- 打包之后叫nib
- 使用时没有设置尺寸,默认为xib描述的尺寸
- 加载xib的方式:
- 常用: UIView * nibView = [[[NSBundle mainBundle] loadNibNamed:@"nibName" owner:nil options:nil firstObject];
- 不常用: UIView * nibView = [[[UINib nibWithNibName:@"nibName" bundle:[NSBundle mainBundle]] instantiateWithOwner:nil options:nil] lastObject];
- 使用注意点:
- 不能通过init方法创建
- 提供一个快速创建的方法
- 不会执行init和initWithFrame方法
- 会执行-(instancetype)initWithCoder:(NSCoder *)aDecoder和-(void)awakeFromNib
以上是关于xib和storyboard的区别的主要内容,如果未能解决你的问题,请参考以下文章
Swift 3 - 如何在 .xib 文件上为 UIScrollView 分配委托?