【问题标题】:Can I bind xib file to view controller via IBOutlet?我可以通过 IBOutlet 将 xib 文件绑定到视图控制器吗?
【发布时间】:2015-01-01 03:17:12
【问题描述】:

我有一个ViewController,我想根据UISegmentedControl动态加载不同的UIView。我在xib文件中设计了3个UIViews。我已经将他们的文件所有者的自定义类设置为我在识别检查器中的视图控制器名称。通过IBOutlet 将我的 xib 连接到视图控制器代码后,我通过viewDidLoad 方法中的“addSubview(view)”方法添加连接的视图。但是当我运行它时,编译器告诉我连接的视图是null

【问题讨论】:

  • 需要更多信息。你的意思是说你创建了三个 xib 文件,每个文件都包含一个视图,或者你创建了一个包含三个视图的 xib 文件?

标签: swift xib iboutlet


【解决方案1】:

而不是制作三个不同的 xib 文件。制作一个包含所有三个视图的 xib 文件,以及第四个“默认”视图。每个视图都应连接到您班级中的不同 IBOutlet。

然后在您的viewDidLoad 中找出您要显示的视图并将addSubview 显示为您的默认视图。

【讨论】:

  • 不工作...它只是说可选视图为零。如果使用 UINib 加载它,它可以工作。懒惰的 var view1:UIView! = UINib(nibName: "CreatureConciergeTab", bundle: nil).instantiateWithOwner(self, options: nil)[0] as?界面视图
  • 你的“默认”视图必须附加到视图控制器viewIBOutlet。
猜你喜欢
  • 2013-06-13
  • 1970-01-01
  • 2011-11-17
  • 1970-01-01
  • 2011-05-11
  • 1970-01-01
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多