【问题标题】:How to rebuild view loaded from nib into new frame size如何将从笔尖加载的视图重建为新的帧大小
【发布时间】:2016-04-18 11:45:03
【问题描述】:
我正在尝试将从 nib 文件加载的视图附加到另一个视图中。
假设第一个视图是subView,第二个视图是containerView。
当我使用addSubView 方法将subView 添加到容器视图中时,子视图具有其内容大小,因此会出现截断。
当我尝试将子视图的框架设置为 containerView 框架时,它会占用框架,但这会阻止 autolayout,换句话说,子视图约束变得毫无意义。
如何在新框架中重建 subView。
【问题讨论】:
标签:
ios
objective-c
uiview
nib
【解决方案1】:
我是这样做的,使用 2 个 UIViewController、一个容器 vc 和一个内容 vc。该方法在容器视图控制器中:
- (void) displayContentController:(UIViewController*)contentViewController
{
[self addChildViewController:contentViewController];
contentViewController.view.frame = self.view.frame;
[self.view addSubview:contentViewController.view];
[contentViewController didMoveToParentViewController:self];
}
在我的应用中,内容的自动布局在所有方向和大小类别中都能完美运行。