如何将从笔尖加载的视图重建为新的帧大小
Posted
技术标签:
【中文标题】如何将从笔尖加载的视图重建为新的帧大小【英文标题】: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
。
【问题讨论】:
【参考方案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];
在我的应用中,内容的自动布局在所有方向和大小类别中都能完美运行。
【讨论】:
以上是关于如何将从笔尖加载的视图重建为新的帧大小的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 中调试“[UIViewController _loadViewFromNibNamed:bundle:] 加载了“SearchView”笔尖但未设置视图出口”?