Swift语言环境下使用init 加载自己的 xib文件

原创 2015年07月09日 09:52:39

1.Swift下创建xib

2.重写init(nibNameOrNil, bundleOrNil)

要让Controller能与xib关联,关键是init(nibNameOrNil, bundleOrNil)方法。既然子类没有自动继承,我们就得亲自添加相关代码。如下:

1继承并重写用nibName初始化的init方法

    //要让Controller能与xib关联,关键是init(nibNameOrNil, bundleOrNil)方法

   overrideinit(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {

        super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)

    }

2前面我们重写了init(nibNameOrNil, bundleOrNil)方法,但如果要使用,那么不得不每次都提供两个参数,这是很麻烦的事。

//重写无参数初始化方法,自动调用xib文件

 //重写无参数init方法,自动调用xib文件

    convenienceinit(){

        var nibNameOrNil ="NibViewController"

        self.init(nibName: nibNameOrNil, bundle:nil)

    }

3.附加代码


写完上述代码后,编译器会报错,提示要加入一段代码才行。双击错误提示,编译器会自动加入以下代码。当然你也可以亲手打进去:

//编译器提示需要加入的代码

required init(coder aDecoder: NSCoder) {

        fatalError("init(coder:) has not been implemented")

}



swift用xib 自定义View

swift用xib 自定义View
  • yeshennet
  • yeshennet
  • 2016年06月03日 11:08
  • 5237

swift3 用协议实现从XIB加载view

如我们实现了一个类TGEmoticonInputV,这个类是UIView,同时对应的XIB(同名)也已经创建 以前我们要加载这个View的做法是 let v = Bundle.main.loadN...
  • callzjy
  • callzjy
  • 2017年03月25日 21:50
  • 2937

iOS swift使用xib绘制UIView

目标:用xib绘制一个UIView,在某个ViewController中调用。 三个文件:ViewController.swift    DemoView.swift     DemoView.xi...
  • worldzhy
  • worldzhy
  • 2015年07月22日 23:07
  • 13523

UIViewController加载不出来/XIB加载不出来的问题总结

用storyBoard或是XIB创建界面时,创建语句应该包含[NSBundle mainbundle]或是bundle参数,并且应该指定identifier,不应该出现alloc init,否则在界面...
  • cuin123
  • cuin123
  • 2015年11月30日 14:55
  • 2137

Swift下自定义xib添加到Storyboard

我们使用Storyboard布局的时候,很多子单元页面会独立到xib布局中,那么这个xib如何添加到storyboard中呢?下面我们看看Swift下怎么操作。一、准备工作 新建Xcode工程 新建一...
  • yanghuiliu
  • yanghuiliu
  • 2016年06月13日 13:48
  • 3829

Swift - 加载XIB 文件

Swift 语言是大趋势 快速开发也是苹果公司推崇的一种开发方式  XIB 和 StoryBoard 是快速开发的一种方式    我们可以结合 这几种方式快速开发我们的项目  但是 StoryB...
  • u012701023
  • u012701023
  • 2015年12月09日 17:53
  • 1642

Swift - 加载XIB 文件

Swift 语言是大趋势 快速开发也是苹果公司推崇的一种开发方式  XIB 和 StoryBoard 是快速开发的一种方式    我们可以结合 这几种方式快速开发我们的项目  但是 StoryB...
  • u012701023
  • u012701023
  • 2015年12月09日 17:53
  • 1642

swift 纯代码、xib自定义控件

swift 纯代码、xib自定义控件
  • Riven_wn
  • Riven_wn
  • 2017年06月06日 14:38
  • 777

swift开发笔记16 - 使用xib自定义一个控件(复合控件)

用xib自定义复合控件
  • baixiaozhe
  • baixiaozhe
  • 2015年11月25日 09:47
  • 1461

一、ios的通过Xib构建UICollectionView的简单运用

众所周知,UICollectionView是ios6才最新引进来的API,用于展示集合视图,可实现多列布局; 经常听人说起 UICollectionView怎么好用,由于之前在赶项目也没有什么时间去学...
  • chuming0311
  • chuming0311
  • 2015年10月19日 17:06
  • 9716
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Swift语言环境下使用init 加载自己的 xib文件
举报原因:
原因补充:

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