【iOS】Storyboard加载Xib自定义view(Swift)

转自: https://www.jianshu.com/p/a34ce1812178

本文使用语言为 Swift, OC 实现有所不同, OC 实现请参考: [iOS] 用xib建立一个自定义view
 

1. 新建DemoView.swift 和 DemoView.xib

设置xib显示元素如图

2. 设置xib文件的file's onwer选项

设置xib文件的file's onwer

3. 绑定xib中的控件到swift文件中

 

绑定xib控件的事件

 

4. 在swift文件中实现从xib的初始化加载

// 定义container为DemoView的子view, 以便更方便的封装xib
private var container: UIView!

// 从storyboard上初始化时,会调用该方法
required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        xibSetup()
    }

private func xibSetup() {
        container = Bundle.main.loadNibNamed("DemoView", owner: self, options: nil)?.first as! UIView
        container.frame = bounds
        container.autoresizingMask = [.flexibleWidth, .flexibleHeight]
        addSubview(container)
}

5. 在storyboard上使用

这样,基本上写很少的代码,就能实现xib自定义view在任何地方的使用

最终效果

【参考】
http://supereasyapps.com/blog/2014/12/15/create-an-ibdesignable-uiview-subclass-with-code-from-an-xib-file-in-xcode-6

 

 


作者:清無
链接:https://www.jianshu.com/p/a34ce1812178
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值