是否可以将控件、AppDelegate 和 UserDefaults 无代码绑定在一起?
我有一个像这样的 AppDelegate
:
@interface AppDelegate : NSObject <NSApplicationDelegate> {
NSString *boundValue;
}
@property (nonatomic, retain) NSString *boundValue;
@end
稍后我将在 AppDelegate
中使用 boundValue
进行一些实时计算。在主 .xib
中,我还有 NSTextField
控件。
所以现在我想将 NSTextField
和 UserDefaults.boundValue
键绑定到我的 AppDelegate.boundValue
。当然,我想用最少的代码编写来做到这一点。
我找到了如何将 NSTextField
绑定到 AppDelegate
或 UserDefaults
的方法。但是如何将 AppDelegate 绑定到 UserDefaults 呢?如何将这三部分(控制 + 委托 + 默认值)连接在一起,而无需额外的代码行?
I have an AppDelegate
like this:
@interface AppDelegate : NSObject <NSApplicationDelegate> {
NSString *boundValue;
}
@property (nonatomic, retain) NSString *boundValue;
@end
I will use boundValue
for some real-time calculations later inside AppDelegate
. In main .xib
I also have NSTextField
control.
So now I'd like to bind both NSTextField
and UserDefaults.boundValue
key to my AppDelegate.boundValue
. And of course I'd like to do that with minimal code writing.
I have found the way how to bind NSTextField
either to AppDelegate
or to UserDefaults
. But how can I bind AppDelegate
to UserDefaults
? How to wire these three pieces — control + delegate + defaults — together without additional lines of code?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要一些额外的代码:
现在您可以根据需要在 IB 中连接,当然前提是 appDelegate 和 userDefaults 在 main.xib 中由那些绿色和蓝色立方体表示。
编辑:
这里有一个关于绑定用户首选项的非常好的教程:在 Cocoa 中绑定你的首选项
You'll need a little bit of extra code:
Now you can connect in IB as you wish, provided of course appDelegate and userDefaults are represented in main.xib by those green and blue cubes.
Edit:
Here's quite a nice tutorial on binding user preferences: Binding your preferences in Cocoa