美文网首页UIiOS进阶指南程序员
[iOS] 用xib建立一个自定义view

[iOS] 用xib建立一个自定义view

作者: Z_桃芮丝 | 来源:发表于2016-07-22 13:52 被阅读5322次

本文主要想记录下,在使用Storyboard来构建UI可视化编程的情况下,如何为一个自定义的view创建一个抽离的可视化xib,以达到重用的作用。

结构

  • 如何将xib和view绑定
  • 在storyboard中自由地使用view
  • Demo

绑定过程

  1. 先来新建一个自定义的View,继承自UIView(必须的了)

    Paste_Image.png
  2. 新建一个xib文件
    在这里,为了更好地识别,我们把这个xib的名字命名成我们之前新建的那个view子类。

    Paste_Image.png
  3. 更改xib的File's Owner class,指向我们创建好的class

    Paste_Image.png
  4. 为xib中已存在的view绑定IBOutlet,命名为contentView。类比tableview cell中content view的作用。

    Paste_Image.png
  5. CustomView.m中实现加载Content View

    - (instancetype)initWithCoder:(NSCoder *)aDecoder
    {
         self = [super initWithCoder:aDecoder];
    
         if (self) {
             [[NSBundle mainBundle] loadNibNamed:@"CustomView" owner:self options:nil];
             self.contentView.frame = self.bounds;
             [self addSubview:self.contentView];
         }
    
         return self;
     }
    

    load nib的时候,owner为self。
    NOTE: load的时机,需要在initWithCoder:或者awakeFromNib里,或者在自己写的convenience initializer里。

  6. 在Content View中任意地添加子view,添加约束,愉快地玩耍吧~

使用自定义view

假设,需要在Main.storyboard中的ViewController里使用这个自定义的view。
在storyboard中新加入一个子view,将其class改为CustomeView,即可

相关文章

  • [iOS] 用xib建立一个自定义view

    本文主要想记录下,在使用Storyboard来构建UI可视化编程的情况下,如何为一个自定义的view创建一个抽离的...

  • iOS:在xib文件中使用另外一个xib文件

    在自定义View的时候我们会遇到在一个xib文件中用到一个View,而这个View也是用xib文件定义的,接下来就...

  • UIView

    view的封装 Xib和storyboard对比 Xib的加载 使用xib自定义view的步骤 l新建自定义控件类...

  • 如何自定义View

    5iOS第五天—自定义View以及KVC&KVO xib的基本使用 什么是xib?xib就是缩小版的storybo...

  • iOS 用xib自定义View

    网上有很多关于实现用xib自定义View,那我为什么还要写呢?第一,我用他们的方法都没有实现。第二,用xib遇到了...

  • UI-Xib

    Xib的加载 方法1 方法2 自定义控件view的步骤 新建自定义控件类 修改xib中view的类名 封装xib的...

  • iOS中xib与storyboard各种加载

    xib 加载自定义View xib 加载自定义控制器 storyboard 加载自定义控制器 xib 加载自定义cell

  • swift 展示无网络view

    用xib自定义view,类型:NetworkStateView 因为多个界面要使用该view,就统一在UIView...

  • 自定义View的创建、添加、移除执行过程分析

    1.创建自定义view的类文件 2.创建一个xib文件来表述自定义view(也可以通过代码) 创建一个xib文件创...

  • XIB写 UI练习

    1.创建一个自定义View 2.创建一个XIB文件 最好与创建的View同名 或者在创建View时直接生成xib ...

网友评论

  • shineDeveloper:你好,我创建了一个自定义xib,上面加了一个手势,不能响应点击时间,不仅仅tap不能响应,凡是点击时间都不响应,不知你有什么建议没有?
    shineDeveloper:我解决了这个问题,是因为我没有加载这个初始化的视图到父容器里,仅仅加载了这个视图里面的控件。

本文标题:[iOS] 用xib建立一个自定义view

本文链接:https://www.haomeiwen.com/subject/qcvbjttx.html