复制视图

时间:2009-07-14 20:26:04

标签: objective-c cocoa

我想创建一个包含一些控件的视图,一个文本字段和一些按钮,我想复制它以将它们显示为tabview中选项卡的内容。 每个选项卡都必须具有此视图的实例。 方向?

3 个答案:

答案 0 :(得分:5)

Dave DeLong很接近,有些问题包含答案(“每个标签必须有一个视图实例”)。创建一个UIViewController子类以编程方式创建视图,或加载NIB。然后实例化UIViewController子类的几个实例,并将它们全部添加到UITabViewController的viewControllers属性中。

您需要花一些时间使用View Controller Programming Guide。你正在制作同一个UIViewController子类的多个实例的事实对解决方案的影响很小。

答案 1 :(得分:1)

嗯......我不确定我是否正确地理解了你想做什么。单词“复制”听起来不是很好,因为大多数情况下在编程中它表示“气味”。

我不是cocoa的专家,也不是objective-c的专家,但我想你可以以某种方式将你的控件放在某种容器控件中并在你的选项卡视图或任何地方实例化(重用而不是复制)这个容器控件你想要。

答案 2 :(得分:0)

克隆视图层次结构的快捷方法是对其进行编码并对其进行解码。例如:

NSData * encodedView = [NSKeyedArchiver archivedDataWithRootObject:myView];
NSView * myViewClone = [NSKeyedUnarchiver unarchiveObjectWithData:encodedView];