【问题标题】:How to change view of my viewController programmatically?如何以编程方式更改我的 viewController 的视图?
【发布时间】:2017-01-25 11:45:45
【问题描述】:

我可以使用 Storyboard 更改 UIViewController 中的视图类,如下所示:

如何以编程方式实现相同的效果? 我试过这个:

convenience init() {
    print("convenience init")
    self.init(nibName: nil, bundle: nil)
    self.view = MTKView()
}

但它不起作用。似乎更改了 MTKView 的视图,但框架并没有像 Storyboard 执行此操作时那样调整大小。

【问题讨论】:

    标签: ios swift uiview uiviewcontroller


    【解决方案1】:

    您应该在视图控制器中实现loadView 函数,并将自定义视图的实例分配给视图控制器的view 属性:

    override func loadView() {
        self.view = MyCustomView(frame: ...)
    }
    

    【讨论】:

    • 不起作用。应用程序崩溃。所以它与在 Storyboard 中直观地设置类没有相同的效果。我正在寻找同样的结果。
    • 什么是崩溃?
    • 是金属相关的崩溃,通过设置它工作的框架:self.view = MTKView(frame: UIScreen.main.bounds)。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多