【问题标题】:How do get a view from a view that has another view controller with a view如何从具有另一个视图控制器的视图中获取视图
【发布时间】:2020-10-16 13:15:30
【问题描述】:

我能够操作具有 ViewA 的 ViewControllerA 的内容。我不想编辑 ViewControllerB 的内容有几个原因。

在我的视图层次结构中,ViewA 包含 ViewControllerB,而 ViewControllerB 又包含 ViewB。我如何获得视图 B.如果我得到它,我想调整它的大小,但我似乎无法得到它。

当前的代码给了我 viewA。

ViewA = ViewControllerA.view

如何获得 ViewB?

【问题讨论】:

  • 您的描述说ViewControllerA 具有属性ViewA,它具有属性ViewControllerB,它具有属性ViewB。如果是这样,找到ViewB 很简单。可能你的描述是错误的。请验证并更新。
  • ViewControllerB 的视图如何进入 ViewA 层次结构?你有权访问 ViewControllerB.view 吗?
  • 所以视图控制器 B 是视图控制器 A 的子级。
  • 请分享您如何设置ViewControllerBViewB 的代码。
  • 好的,ViewControllerBViewControllerA 的子类,那么您要做什么?您应该展示您的代码或进行更详细的说明。

标签: ios objective-c computer-science mobile-development


【解决方案1】:

嘿,很抱歉这里的混乱,但我所做的实际上比这更复杂一些。我正在向我的视图控制器添加一个具有多层视图控制器和视图的视图控制器作为 childViewController。这创建了一个相当复杂的层次结构,因此只是简单地从我的 viewcontrollerA 中的 childviewcontroller、viewcontrollerB 获取视图并调整我想要在这个 view controlleraA 中的部分的大小是行不通的。我唯一的选择是编辑 viewControllerB 本身的内容,我一开始并不想这样做,以假设父视图控制器 A 的视图的大小。

用这段代码在 viewcontrollerB 中创建了一个新方法

childViewController.view.frame = _owner.view.bounds;
[childViewController.view setNeedsLayout];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多