您的位置:首页 > 移动开发 > IOS开发

storyboard 和 xib

2014-04-12 14:46 295 查看
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中的视图组件建立联系。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  IOS storyboard xib