星空网 > 软件开发 > 操作系统

IOS Xib使用——Xib表示局部界面

Xib文件是一个轻量级的用来描述局部界面的文件,在之前的文章讲解了为控制器添加Xib文件,本节主要讲解一下通过xib文件表示局部界面。

<一> 创建Xib文件

  Xib文件创建的时候是选择User Interface里面的Empty模板创建,当然,如果你想创建一个新的欢迎界面,可以直接选择Launch Screen模板,此外,Storyboard文件也是在这选择。当你选择Empty模板时,默认创建的文件后缀名为xib,也就是xib文件。

 IOS  Xib使用——Xib表示局部界面images/loading.gif' data-original="http://images2015.cnblogs.com/blog/708076/201510/708076-20151009153113924-215748608.png" />

<二>  Xib文件存放局部view

  创建的xib文件里面默认为空的,可以从xCode右下角的Interface Builder中拖拽控件,默认拖拽的UIView尺寸是固定的,需要在右侧边栏进行设置,才能改变其尺寸。

 IOS  Xib使用——Xib表示局部界面

在一个xib文件中可以添加多个UIView或者UIView的子类,它们是按照顺序存放在数组中的,在使用的时候,可以根据索引位置从xib的数组中获取到。

 IOS  Xib使用——Xib表示局部界面

xib中添加好局部界面之后,就可以通过代码来获取了,步骤是先获取到应用程序的路径,然后得到xib文件中的数组,根据索引,取出想要的界面。

  代码

 UIView *view = [[NSBundle mainBundle] loadNibNamed:@"JRTemp" owner:nil options:nil][0];

  获取xib文件中全部界面需要调用loadNibNamed:方法,第一个参数是文件名称,第二个参数是xib文件的所有者,如果当前的xib文件是当前所在的控制器特有的,这个参数可以添加控制器,但是这样的话在其他控制器中就不能再使用该xib中的界面。如果xib文件中的界面是可以在多个控制器中展示,那么owner就设置为nil。

  <三>  封装xib中的UIView

  通过xib表示局部视图后,可以在需要的地方通过代码从xib文件中获取,如果每次都直接从xib中获取非常麻烦,通常我们会把xib中的每个小的局部界面用对应的类来进行封装,并在这个类中提供得到该视图对象的方法,用此来优化代码,步骤如下。

  1、先创建一个类来表示xib文件中对应的局部界面。

 IOS  Xib使用——Xib表示局部界面

  2、在xib中找到要关联的view,在右侧边栏设置它的class为新创建的类,让二者进行关联。

 IOS  Xib使用——Xib表示局部界面

 3、把xib中的小控件与新增的类进行连线,让小控件成为类的属性,这样在后面用起来会方便许多。

 IOS  Xib使用——Xib表示局部界面

IOS  Xib使用——Xib表示局部界面

  4、在新增中添加一个方法,从xib文件中获取局部界面,代码如下:

代码

+(instancetype)rowViewFromFile{  return [[NSBundle mainBundle] loadNibNamed:@"JRTemp" owner:nil options:nil][0];}

  5、完成以上步骤,使用局部界面的时候,就可以通过类创建对象的方式来快速的得到界面并使用,代码如下:

  代码

RowView *rowView = [RowView rowViewFromFile];[self.view addSubview:rowView];

xib文件中的第一个小的view就被添加到了界面上,如果不设置frame,默认坐标为原点,尺寸为xib中的尺寸,在这里可以根据自己需求进行设置,效果如下:

 IOS  Xib使用——Xib表示局部界面

 

作者:杰瑞教育
出处:http://www.cnblogs.com/jerehedu/ 
版权声明:本文版权归烟台杰瑞教育科技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
技术咨询:IOS  Xib使用——Xib表示局部界面
 



原标题:IOS Xib使用——Xib表示局部界面

关键词:IOS

IOS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

【亚马逊】如何让日销20单的链接变成日销100单?:https://www.kjdsnews.com/a/543683.html
卖家转行做培训,已赚百万?:https://www.kjdsnews.com/a/543684.html
2021年下半年如何启动亚马逊生意?收好这份详细攻略:https://www.kjdsnews.com/a/543685.html
扎心了!跨境电商人真实的一天......:https://www.kjdsnews.com/a/544656.html
最前沿的wayfair运营难题QA(连载11):https://www.kjdsnews.com/a/544657.html
美区购物车也要来了,TikTok电商业务要起飞了吗?:https://www.kjdsnews.com/a/544658.html
2022世界杯门票如何买?:https://www.vstour.cn/a/363182.html
沈阳到本溪的距离有多远?(详细路线及交通方式):https://www.vstour.cn/a/363183.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流