xib 或者 sb 拖控件是拖的是控制器的时候,需要注意一下几点
- 共同点:
- 都需要在控件绑定类
- 在应用到控制器的时候,不能用默认的方式初始化方式,即XxxViewController(),需要用各自的初始化方式
- 不同的初始化方式
- xib
Bundle.main.loadNibNamed("xib名字", owner: nil, options: nil)?.first as! 类名
- sb
sb 中只有一个控制器
UIStoryboard.init(name: "sb名字bundle: nil).instantiateInitialViewController() as! 类名
sb 有多个控制器的时候 ,需要每个控制字指定一个Storyboard ID
,具体代码
UIStoryboard.init(name: "SB名字", bundle: nil).instantiateViewController
(withIdentifier: "vc 的 sb id 见下图") as! 控制器类名

网友评论