iOS - 使用自定义的Xib作为自己的子视图

原创 2016年08月29日 14:23:28

使用自定义Xib作为自己的子视图方法,新建一个项目XibTest工程,在Main.Storyboard 的View下加入一个View子视图。
这里写图片描述
新建子视图文件,创建一个SubxibView.swift和SubXib.xib文件,并设置成你想要的内容,并将File‘s Owner的Custom Class 设置成你SubXibView,而View不要与SubXibView关联。
这里写图片描述
将我们在Main.Storyboard的View 关联上SubXibView,

这里写图片描述

在SubXibView.swift添加以下代码:

import UIKit

class SubXibView: UIView {

    weak var view: UIView!

    func loadViewFromNib() -> UIView {
        let bundle = NSBundle.init(forClass: SubXibView.self)
        let nib = UINib(nibName: String(SubXibView), bundle: bundle)
        let view = nib.instantiateWithOwner(self, options: nil)[0] as! UIView
        return view
    }

    func setupSubViews() {
        view = loadViewFromNib()
        view.autoresizingMask = [UIViewAutoresizing.FlexibleWidth, UIViewAutoresizing.FlexibleHeight]
        addSubview(view)
    }


    override init(frame: CGRect) {
        super.init(frame: frame)
        setupSubViews()
    }

    convenience init() {
        self.init(frame: CGRect.zero)
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        setupSubViews()
    }
}

成功运行,效果如下

这里写图片描述
成功加载了我们自定义的子视图.
在SubXibView.Xib上添加一个Label,并关联到SubXibView.swift上,在setupSubViews() 最后添加一行代码testLabel.text = "测试Label"结果如下:
这里写图片描述
成功获取到子视图关联的组件,代码中可以调用,也不会报空指针异常问题。

版权声明:阳仔原创,转载请注明出处。

IOS开发(97)之自定义视图之使用XIB自定义一个UIView

1 前言 Xcode中集成的BI中的控件十分丰富,但有时候难免不能满足我们的需求,今天我们来学习一下如何使用XIB自定义一个UIView,做到复用的作用。 2 详细流程 目录视图: 2...

IOS 使用XIB 自定义View

  • 2012年10月31日 10:24
  • 54KB
  • 下载

IOS开发(98)之非XIB文件的自定义视图

1 前言 上一节我们谈到用XIB文件构建的自定义视图,今天我们来介绍一下,不借助XIB文件的自定义视图,共同学习一下。 2 详述 目录结构 这次我们不建立XIB文件,而是直接的Obje...

使用XIB实现嵌套自定义视图

在进行iOS开发的过程中,对于一些复杂的界面,我们可以通过Interface Builder这个Xcode集成的可视化界面编辑工具在完成,这回节省大部分时间以及代码量。它的使用方法这里不做介绍了,这次...

iOS在Xib加载自定义Xib视图

iOS在Xib加载自定义Xib视图 最近都在做Android项目的开发,许久没有捣腾iOS开发了,今天接到一个旧项目功能的开发,为了快速开发出来决定使用Xib或者Storyboard来实现,虽然很简...

IOS 使用XIB 自定义View

一般自定义View       代码方式 有       在初始化的时候添加 子Views [cpp] view plaincopy - ...

iOS回顾笔记(03) -- 自定义View的封装和xib文件的使用详解

iOS回顾笔记(03) -- 自定义View的封装和xib文件的使用详解 iOS开发中,我们常常将一块View封装起来,以便于统一管理内部的子控件。如iOS回顾笔记(02)中的"书"这一自定义Vie...

IOS使用Xib创建自定义View

新建object-c类,从UIView继承,如新建FlagView #import @class FlagBean; @interface FlagView : UIView @pr...

iOS深入学习(UITableView系列4:使用xib自定义cell)

可以通过继承UITableViewCell重新自定义cell,可以像下面一样通过代码来自定义cell,但是手写代码总是很浪费时间, ? 1 2 3 4 5 6 7 8 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS - 使用自定义的Xib作为自己的子视图
举报原因:
原因补充:

(最多只允许输入30个字)