首页 > 代码库 > iOS中xib与storyboard原理,与Android界面布局的异同
iOS中xib与storyboard原理,与Android界面布局的异同
用文本标记语言来进行布局,用的最多的应该是HTML语言。HTML能够理解为有一组特殊标记的XML语言。
一、iOS中xib与storyboard显示原理
在iOS中基本的布置界面的方式有3种:代码。xib,storyboard。
1. 代码
代码布置界面是万能的。但通常非常复杂。布置一个简单的界面可能须要非常多行代码。因此十分繁琐。
以下为创建一个button的代码,最少也要3行:
UIButton *btn = [UIButton buttonWithType:UIButtonTypeContactAdd]; btn.center = CGPointMake(100, 100); [self.view addSubview:btn];
2. xib
xib适合布置小块界面,也能够用来做单个界面。
属于拖控件型,仅仅须要写载入xib的代码。
下图为用文本编辑器打开xib文件的结果:
能够看到,xib本质也是xml文件。
<document>标签内就是xib要显示的内容。
能够看到<view>标签内就要显示的内容。该xib仅仅显示了一个带颜色的空白view。
xib的原理就是将xml文件解析出来,找到对应的view,转换成代码。然后创建对象并显示。
形如:
UIView *view = [[UIView alloc] init]; view.frame = CGRectMake(0.0, 0.0, 320, 480);
3.storyboard
storyboard适合做大界面的跳转等,并且丰富的viewController使得做减免变得很easy。
相同。将storyboard用文本编辑器打开,可看到例如以下:
本质上还是xml文件。
<objects>标签下就是要创建的界面。
这里用到了tabBarController作为根视图控制器。
tabBarController下指向4个其它视图控制器。
storyboard的原理也是将xml文件解析出来,找到对应的控制器等。转换成代码。然后创建对象并显示。
和xib原理一样。
二、Android与iOS布局显示的比較
众所周知。Android中布局基本全然是用xml完毕。即使有一个所谓的能够拖控件的地方,也仅仅能用粗制滥造来形如。
而iOS封装的可谓相当出色,要是不用文本编辑器打开,非常多人可能不知道这是用xml文件的方式来显示布局的。
关于基本原理:Android与iOS基本布局显示原理是一样的,都将视图与模型数据分离。都遵循MVC的设计模式。
转载请注明出处:http://blog.csdn.net/xn4545945
iOS中xib与storyboard原理,与Android界面布局的异同