【问题标题】:How to manage nested viewcontrooler view size in swift?如何快速管理嵌套的视图控制器视图大小?
【发布时间】:2016-03-06 07:46:10
【问题描述】:

我有一个父视图控制器,想在其中构建一个嵌套视图控制器。父视图控制器在屏幕中间有一个 contentView(a UIView)。单击按钮时,我希望嵌套视图控制器出现在 contentView 位置。但是当我单击按钮时,嵌套视图将显示在 contentView 之外。下面是我正在使用的代码。 currentViewController 是嵌套视图。 contentView 是父视图。我发现有趣的是,如果我使用 UITableViewController 作为嵌套控制器,一切正常。嵌套视图正确地位于其父视图内。当我使用 UIViewController 时它失败了。我不知道出了什么问题。

self.currentViewController = self.storyboard?.instantiateViewControllerWithIdentifier("NestedViewController")
self.addChildViewController(self.currentViewController!)
        self.currentViewController?.view.translatesAutoresizingMaskIntoConstraints = false
        self.currentViewController?.view.frame = self.contentView.bounds
        self.contentView.addSubview((self.currentViewController?.view)!)
        self.currentViewController?.didMoveToParentViewController(self)
        self.currentViewController?.view.layoutIfNeeded()

【问题讨论】:

  • 为什么在不使用约束的情况下会有这条线self.currentViewController?.view.translatesAutoresizingMaskIntoConstraints = false
  • 你是对的。删除此代码后,它工作正常。
  • 太好了,让我添加为 aswer

标签: ios swift


【解决方案1】:

你应该删除该行

self.currentViewController?.view.translatesAutoresizingMaskIntoConstraints = false

因为当你想使用自动布局约束时使用它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-04
    • 2021-10-06
    • 1970-01-01
    • 1970-01-01
    • 2018-06-06
    • 1970-01-01
    相关资源
    最近更新 更多