将单独的xib视图控制器加载到Storyboard导航中

时间:2017-11-09 04:15:27

标签: ios objective-c

我有两个故事板,我有两个故事板的共同屏幕。我已经将它创建为带有xib的单独视图控制器。我想在故事板屏幕之间加载它。

2 个答案:

答案 0 :(得分:2)

您可以非常轻松地从Nib文件加载VC。尝试下面的代码:

func presentMyViewController() {
    let myVC = MainViewController(nibName:"MyViewController", bundle:nil)
    self.navigationController.pushViewController(myVC, true);
    // you could present it another way, such as:
    // self.presentViewController(myVC, true, nil)
}

编辑:根据评论我不认为我们可以直接从故事板加载xib但是如果我们需要导航到xib然后你可以尝试上面的代码,否则你也可以直接在viewcontroller上添加子视图控制器。

答案 1 :(得分:0)

如下所示:

您可以在类中覆盖loadview()方法。

public class MyViewController {
    override func loadView() {
        Bundle.main.loadNibNamed("MyViewController", owner: self, options: [:])
    }

   //your stuff here...

}

假设您的XIB当然是MyViewController.xib。调整以适应。

编辑:还假设您已正确设置XIB中的文件所有者引用(即相关视图控制器)。