1> 什么是xib? xib能做什么?
* 用来描述软件界面的文件。
* 如果没有xib, 所有的界面都需要通过代码来手动创建。
* 有了xib以后, 可以在xib中进行可视化开发, 然后加载xib文件的时候, 系统自动生成对应的代码来创建界面。
* 与xib类似的还有storyboard文件。
2> xib与storyboard既然都是描述软件界面的, 有什么区别吗?
* xib是轻量级的, 一般只用来描述一个界面中的某部分内容(用来描述局部UI界面)。
* storyboard是重量级的, 一般用来描述软件的多个界面, 以及不同界面之间的跳转关系。
xib的具体使用过程
1> 新建一个AppView.xib文件来描述AppView内部的结构
*具体通过[NSBundle mainBundle]loadNib的方法来加载xib,然后通过viewWithTag或者subViews[index](注意:以上两种方式返回值都是UIView将来还需要强制类型转换)获取子控件,然后拿到子控件赋值
2> 新建一个继承UIView的自定义view,假设类名叫做(appView)
3> 修改UIView的类型为appView真实类型
4> 将内部的子控件跟appView进行属性连线
5> appView提供一个模型属性
6> 重写模型属性的set方法,因为在set方法中可以拿到外界控制器传递的模型数据
7> 把模型数据拆开,分别设置数据到对应的子控件中
8> 补充:提供一个创建AppView的类方法,将读取xib文件的代码屏蔽起来
3> 查找xib在手机模拟器中的位置。安装到手机上后就变成了nib文件了。
/Users/Steve/Library/Developer/CoreSimulator/Devices/0C63A035-071E-4EFC-8718-C387A3F7E026/data/Containers
|
|