storyboard 和 xib

1.区别(storyboard 是在 IOS 5.0 后才有的)

  • storyboard:描述软件界面,大范围,重量级,比较合适描述整个软件的所有界面
  • xib:描述软件界面,小范围,轻量级,比较适合描述软件中得某个小界面(局部界面),例如几个组件的组合体。

2.相同点:他们本质都是通过解析 xml 文件来一个个创建相应的视图组件,跟 Android 中的layout文件类似。


3. 可以认为 xib 和 nib 是同义词。


4. 加载 xib 文件的方法:

// 加载 RowView.xib 文件,返回的是该xib文件下所有的视图组件,数据类型为NSArray. owner 的值很重要
[[NSBundle mainBudle] loadNibNamed:@“RowView” owner:nil options:nil];


5. File’s Owner 的使用步骤

  • 在目标 xib 文件中设置 File’s Owner 的class 属性(目的是在xib中能找到Owner的方法,从而能够对xib中的组件进行相关的事件监听)
  • 建立 File’s Owner 跟控件之间的关系
  • 利用代码加载 xib,传递Owner 参数(类型与xib文件中的属性一定要匹配)。


一些常用到的方法

  • [_childView removeFromSuperView]      // 从父控件中移除 _childView 这个子控件
  • [_childView superView]  //返回 _childView 所在的父控件
  • [_parentView viewWithTag:mytag]  // 根据mytag 找到 _parentView 中对应的子控件 


将一个xib文件独立出来

1. 新建一个xib文件,然后添加一个UIView, 并往UIView中添加一些视图组件。

2. 新建一个OC类,并继承自UIView。

3. 点击 xib 文件,选中那个父视图UIView,然后在右边属性栏中的 “Custom Class” 属性中填写 2 步骤中新建的OC类名。这样OC类就与xib文件建立了联系

4. 在OC类文件中添加一些与xib视图中组件对应的成员变量,并且可以添加按钮点击事件。

5. 在 xib 文件中,选中然后右键修改后 UIView,在弹出的一些成员变量和事件中,可以拉线与xib中的视图组件建立联系。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值