我试图抓住绑定,并在xcode中设置了一个带有CPTextView的CPWindow,并将窗口和textview绑定到各自的插座。
我试图让textview显示_xmlContent
时有点卡住了。我已经将xcode中的绑定设置为"委托"以及xmlContent
的关键路径(也尝试了self.xmlContent
和_xmlContent以及我能想到的所有变体。)
@import <Foundation/Foundation.j>
@import <AppKit/AppKit.j>
@implementation AppController : CPObject
{
@outlet CPWindow theWindow;
@outlet CPTextView codeView;
CPString _xmlContent @accessors(property=xmlContent);
}
// ...
@end
我现在得到的信息是:
CPUndefinedKeyException: <AppController 0x00a177> is not key value coding-compliant for the key xmlContent
如何使我的AppController键值编码符合密钥&#34; xmlContent&#34;?
答案 0 :(得分:1)
您的代码看起来是正确的。我自己重新创建它,它对我来说很好:
@implementation AppController : CPObject
{
@outlet CPWindow theWindow;
CPString _xmlContent @accessors(property=xmlContent);
}
- (void)applicationDidFinishLaunching:(CPNotification)aNotification
{
}
- (void)awakeFromCib
{
[theWindow setFullPlatformWindow:YES];
[self setXmlContent:@"kitten"];
您应该验证您是否正在运行您认为正在运行的代码。这里常见的一个缺陷是,某些Web浏览器真的喜欢挂起代码的缓存副本,因此请确保您拥有&#34;禁用缓存&#34;在您正在测试的任何浏览器中启用选项。
如果所有其他方法都失败,请更改开发HTTP服务器的端口号并从新URL加载页面。这将强制浏览器获取所有内容的新副本(因为URL已更改)。