xib的简单介绍与使用

来源:互联网 发布:知乎分享你刚编的故事 编辑:程序博客网 时间:2024/05/16 07:46
  

1> 什么是xib? xib能做什么?

* 用来描述软件界面的文件。

* 如果没有xib,所有的界面都需要通过代码来手动创建。

* 有了xib以后,可以在xib中进行可视化开发,然后加载xib文件的时候,系统自动生成对应的代码来创建界面。

* xib类似的还有storyboard文件。


2> xibstoryboard既然都是描述软件界面的,有什么区别吗?

* xib是轻量级的,一般只用来描述一个界面中的某部分内容(用来描述局部UI界面)。


* storyboard是重量级的,一般用来描述软件的多个界面,以及不同界面之间的跳转关系。



3> 加载xib的方式:

NSBundle *bundle = [NSBundle mainBundle];

[bundle loadNibNamed]

[bundle bundlePath] 查看mainBundle的路径。


4> 查找xib在手机模拟器中的位置。安装到手机上后就变成了nib文件了。

/Users/Steve/Library/Developer/CoreSimulator/Devices/0C63A035-071E-4EFC-8718-C387A3F7E026/data/Containers

NSString *home = NSHomeDirectory();

NSLog(@"%@", home);




8. 封装,自定义View。创建属性、传递Model进去。让xib文件的class 属性为 自创建的View(继承自UIView)



9. 封装创建View的代码,让用户不知道是通过xib创建的还是通过代码创建的。

* 封装一个类方法



11.xib文件的加载过程。

0> 根据路径, 搜索对应的xib文件(nib文件)

1> 加载xib文件的时候,会按顺序加载xib文件中的每个控件。

2> 对于每个控件,创建的时候都会查找对应的Class属性中配置的是那个类,那么就创建对应的类的对象。

3> 创建好某个控件以后,按照在xib中配置的属性的值,依次为对象的属性赋值。

4> 创建该控件下的子控件,并设置属性值。然后把该控件加到父控件中。

5> 最后返回一个数组,这个数组中包含创建的根元素对象。


12. 再次封装,在创建自定义View的时候把model传递进去。达到传递数据的作用。

Demo效果图如下所示:
































大家可以参考如下的Demo代码,是传智博客的,以帮助大家理解与学习!

Demo下载

0 0
原创粉丝点击