如何在运行时编辑和保存nib文件?

时间:2011-09-01 16:28:18

标签: cocoa dynamic runtime nib persistent

想象一个应用程序,它向用户显示了许多按钮。此应用程序希望允许用户在屏幕上移动按钮,自定义显示,然后保存此配置供以后使用。也就是说,当应用程序关闭并重新启动时,它将以相同的配置重新启动。

我想用“出厂默认”按钮布局创建一个nib文件,但是在用户按照自己喜欢的方式配置后,创建一个存储新UI的新nib文件。如何做到这一点?

谢谢!

2 个答案:

答案 0 :(得分:3)

看看

 NSData * viewData = [NSKeyedArchiver archivedDataWithRootObject:yourView];
 NSView * yourView =[NSKeyedUnarchiver unarchiveObjectWithData:viewData];

这将做你想要的。包含所有子视图,属性等。

答案 1 :(得分:1)

你真的不会创建一个新的笔尖。

对于一个,你不能指望用户安装devtools。所以你需要以编程方式实现这些动态部分。

可能会为可变属性导出带有颜色,位置等的字典;然后将这些属性应用于这些对象(因此它就像一个nib的xml表示上的简单层)。

如果您当前没有使用标签来识别笔尖的对象,那么这可能是识别导出字典中对象的简便方法。

祝你好运