制作一个uiview的精确副本,除了制作它的精确副本实例外,它本身是永远不会被使用的

时间:2015-10-21 11:51:27

标签: ios objective-c iphone uiview

我在场景中的故事板中有一个视图,就像firstResponder那样放置视图层次结构,并像对象一样退出对象,这个视图让我们称之为supplementaryView,通过{{连接到多个视图1}}。

它连接的视图和IBOutlet属于我的自定义类。将其作为supplementaryView的视图设计为通过setter接收此视图,然后制作副本并将自我添加为子视图和某些属性。

所以IBOutlet有点像完全设计的supplementaryView实例,除了复制之外永远不会用于任何事情。此supplementaryView也是一个自定义类,其supplementaryViewinitWithFrame覆盖,没有xib,完全由initWithCoder的代码构建。

在运行时复制此NSLayoutConstraints的最佳选择是什么?

我应该自己实施supplementaryView并复制NSCopying和其他自定义属性以及IBInspectable的属性吗?

或者使用UIView在运行时使用类的属性进行操作会更好吗?

或者有更好的选择吗?

1 个答案:

答案 0 :(得分:0)

您无法在NSCopying上实现UIView您将获得异常,视图无意复制,但是您可以使用一些技巧来实现此目的,您可以使用{ {1}}归档NSKeyedArchiver对象然后取消归档,基本上“复制”视图。类似的东西:

UIView
相关问题