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


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

    <一> 创建Xib文件

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

     

    <二>  Xib文件存放局部view

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

     

    在一个xib文件中可以添加多个UIView或者UIView的子类,它们是按照顺序存放在数组中的,在使用的时候,可以根据索引位置从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文件中对应的局部界面。

     

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

     

     3、把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中的尺寸,在这里可以根据自己需求进行设置,效果如下:

     

    作者:杰瑞教育
    出处:http://www.cnblogs.com/jerehedu/ 
    版权声明:本文版权归烟台杰瑞教育科技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    技术咨询:JRedu技术交流
     
  • 相关阅读:
    notepad++插件 small
    js中面向对象 small
    #九阴真经#优选配置渲染流程简要分析[Flexi引擎]
    gkENGINE HDR流程简析
    新的开始
    以前的一些画
    gkENGINE 开发两年半总结(上)
    gkENGINE跨平台的问题总结
    win7下安装xp双系统
    Hadoop0.20.2+ Nutch1.2+Tomcat7——分布式搜索配置
  • 原文地址:https://www.cnblogs.com/jerehedu/p/4864039.html
Copyright © 2020-2023  润新知