我的 View Controller xib 文件中有一些 UIView - 1、2、3。
View 1 是 View Controller 的主视图。
View 2 和 3(在 xib 中位于主视图 1 之外)也是 View Controller 中的属性。因此,我不需要初始化它们。我可以用代码将它们添加到我的主视图中。
我的问题是:我可以重新加载 View 2 和 3。例如,在更改 View 2 中的标签和 View 框架后,我可以重新加载 View 以恢复所有原始布局等吗?
最佳答案
你可以使用这样的东西:
NSArray *nibArray = [[NSBundle mainBundle] loadNibNamed:@"MainViewController" owner:self options:nil];
UIView *mainViewControllerSuperView = [nibArray objectAtIndex:0];
NSArray *superViewsArray = [mainViewControllerSuperView subviews];
UIView *secondView = [superViewsArray objectAtIndex:1]; // index of view you need
self.mainViewController.secondView = secondView;
或单行:
self.mainViewController.view = [[(UIView *)[[[NSBundle mainBundle] loadNibNamed:@"MainViewController" owner:self options:nil] lastObject] subviews] objectAtIndex:1];
关于ios - 使用 nib 中的 View 重新加载 UIView 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18510771/