自定义控件¶
自定义控件可以是任何控件的子类,为了方便就用UIView做例子
首先新建一个xib文件,xib文件就是一个部分的storyboard文件,可以设计任意画面
  
拖入两个label
  
然后新建一个swift类,继承于UIView

然后将UIView的Files's Owner中的Custom Class换成新建的类
注意不是直接制定View的类,而是制定File's Owner的类

将需要的控件关联到类中,注意整个View也要拖入

然后在类中重写awakeFromNib方法
1 2 3 4 5 6  | //导入布局文件 Bundle.main.loadNibNamed("CustomView", owner: self, options: nil) //设置view画面的大小和位置 view.frame = CGRect.init(x: 0, y: 0, width: frame.size.width, height: frame.size.height) //将view添加到自定义控件的画面中 self.addSubview(view)  | 
如果想要在初始化时做些操作也可以重写init方法,但是必须也要写一个 required init方法,如下

使用时只要在需要的画面中拖入自定义控件的父类,然后将Custom Class换成自定义类即可
这里的父类是UIView,所以拖入的是UIView控件
  
然后将控件拖入ViewController就能进行操作了,最后效果如下