【问题标题】:Load Separate xib view controller into Storyboard navigation [duplicate]将单独的 xib 视图控制器加载到情节提要导航中[重复]
【发布时间】:2017-11-09 04:15:27
【问题描述】:

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

【问题讨论】:

    标签: ios objective-c


    【解决方案1】:

    您可以非常轻松地从 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 上添加子视图控制器。

    【讨论】:

    • 问题是如何在情节提要中做到这一点,而不是代码。
    • 这里的问题首先并不清楚,其次是在否决任何回复之前,您应该考虑通过发布评论来表示确认。 @SrđanStanić
    • 对不起,我投反对票太快了。你能编辑你的答案,以便我投票吗?
    • 已编辑。用适当的描述提出问题会很有帮助。
    【解决方案2】:

    如下所示:

    您可以在类中重写 loadview() 方法。

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-25
      • 2014-08-12
      • 1970-01-01
      • 1970-01-01
      • 2017-11-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多