ios - 如何在 UIView 中加载 xib 文件

我一直在到处寻找,但到目前为止没有什么对我有用。

基本上我想要一个名为 rootView.xib 的 .xib 文件,在其中我想要一个 UIView(我们称之为 containerView),它只占据屏幕的一半(所以会有常规 View 和一个新的看法)。然后我想要一个名为 firstView.xib 的不同 .xib 文件并将其加载到 containerView 中。所以我可以在 firstView.xib 上有一堆东西,在 rootView.xib 中有一堆不同的东西,然后将我的 firstView.xib 加载到 rootView.xib 的 containerView 中,但由于它只占用屏幕的一半,你仍然会看到rootView.xib 上的东西

最佳答案

要以编程方式从 xib 文件中获取对象,您可以使用:[[NSBundle mainBundle] loadNibNamed:@"MyXibName"owner:self options:nil] 返回顶级对象数组在xib中。

所以,你可以做这样的事情:

UIView *rootView = [[[NSBundle mainBundle] loadNibNamed:@"MyRootView" owner:self options:nil] objectAtIndex:0];
UIView *containerView = [[[NSBundle mainBundle] loadNibNamed:@"MyContainerView" owner:self options:nil] lastObject];
[rootView addSubview:containerView];
[self.view addSubview:rootView];

https://stackoverflow.com/questions/7814928/

相关文章:

c - 先学C再学Objective-C

objective-c - 如何在 Objective-C 中创建和使用队列?

objective-c - 如何将 NSTimeInterval(秒)转换为分钟

objective-c - 在 Objective-C 中向 nil 发送消息

iphone - 检测特定的 iPhone/iPod touch 型号

objective-c - 从当前日期减去 7 天

ios - 在 ios9 中替换 stringByAddingPercentEscapesUsing

ios - 链接器命令失败,退出代码 1(使用 -v 查看调用),Xcode 8,Swift 3

objective-c - 是否可以更改 UIButtons 背景颜色?

objective-c - Objective-C 中 `oneway void` 的用例?