gpt4 book ai didi

xcode - 在 Interface Builder 中嵌套 XIB/通过引用嵌入

转载 作者:行者123 更新时间:2023-12-04 19:20:37 25 4
gpt4 key购买 nike

假设我为图标 View 创建了一个 XIB。然后我想在 中嵌入该图标 View 的多个实例。不同 XIB容器查看引用 ,所以如果我更改原始图标 View XIB 中的属性/布局,容器 View XIB 中的实例会反射(reflect)这些更改。

本质上,通过引用嵌入。

也许我很密集,但是当将 View 拖到容器 View 中时,Interface Builder 的默认行为似乎是复制所有内容,而不是引用原始的 XIB?将与图标 View 关联的类的实例拖到容器 View 中只会导致空白 View 。

我敢肯定有办法做到这一点,但如果我能弄清楚的话,我该死的。我通常会像瘟疫一样避免 IB ;)

最佳答案

没有办法直接在 Interface Builder 中执行此操作。我需要在我的上一个应用程序中做类似的事情。我最终做的只是将占位符 View 放置在您想要引用的 xib 的位置,然后在您的 viewDidLoad 或 viewWillAppear 等中,您加载该 xib 并将加载的 View 放置为占位符 View 的 subview 。

NSArray *views = [[NSBundle mainBundle] loadNibNamed: @"ReferencedView" owner: self options: nil];
UIView *referencedView = (UIView *)[views objectAtIndex:0];
[self.viewPlaceholder addSubview:referencedView];

或者,您可以在 View Controller 中创建一个 IBOutlet 来保存引用的 View 并在 IB 中连接该 socket 。如果你这样做了,那么你就不需要把 View 拉出 NSArray。

关于xcode - 在 Interface Builder 中嵌套 XIB/通过引用嵌入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3879188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com