我如何克隆/复制某种 iOS 的 UIView?

2024-01-08

(下面的屏幕截图有助于解释我想要做什么)

这背后的想法是我有一个UIView, 与各种不同的UI里面的元素,例如,假设我有一个UIView,里面有一个UILabel.

现在我想复制UIView(里面有标签)但不知何故之后我可能需要对标签进行更改,例如更改文本属性。

我需要这样的东西的原因是这样我可以构建UIView我需要的所有东西看起来都不错,但实际上有不同的数据和不同的副本。

I'm not certain this is the best approach, but it's the only one I could come up with. If anyone has any ideas on how to do this, or any ideas on a better approach I'd really appreciate it. A lot!Screenshot to make it easier to understand


我个人认为最好的答案是单独创建每个视图并根据需要进行配置。您可以创建一个方法,仅将新的 UIView 配置为看起来相同,并通过它传递每个视图。

但是,如果您确实需要复制 UIView,可以将其存档,然后取消存档:

id copyOfView = 
[NSKeyedUnarchiver unarchiveObjectWithData:[NSKeyedArchiver archivedDataWithRootObject:originalView]];
UIView *myView = (UIView *)copyOfView;
[self.view addSubview:myView];

如果您有很多这些,请确保您使用 Instruments 时间分析器来检查您的绘图效率。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我如何克隆/复制某种 iOS 的 UIView? 的相关文章

随机推荐