这可能是一个愚蠢的问题,请原谅我,如果是,但我不是Mac家伙,这是我第一次建立一个认真的应用程序。
我已经构建了一个ViewController来显示一个tableview和数据,但我的应用程序由几个部分组成,几乎完全相同。有没有办法复制它和所有设置,这样我就可以去更改次要细节而无需重现所有子视图并多次连接所有设置?
或者我只是懒惰; - )
干杯
答案 0 :(得分:0)
在Cocoa中执行此操作的正确方法是将所有“可复制”UI /控制器程序集放入其自己的Nib / Xib文件中。这样,您每次都会加载程序集的新副本。有关快速和肮脏的信息,请参阅this article。
这实际上是NSDocument的工作原理(注意文档的单独xib,与MainMenu.xib分开),甚至NSCollectionView的原型视图如何工作。
获得装配体的新副本后,将设置(状态)复制到其中。 “如何”取决于你如何存储你的状态。在顶级对象(成为xib文件所有者的控制器)中使用方便的setter / getter将所有内容保存在方便的位置,您应该可以说[newController setSettings:[originalController settings]];
。