gpt4 book ai didi

cocoa - 将属性访问器转发到 ivar 的方法

转载 作者:行者123 更新时间:2023-12-03 18:03:28 24 4
gpt4 key购买 nike

我有一个详细说明所选表格行的面板。显然,面板的显示经常需要更新,我已将该任务推到 NSWindowController 子类中。

我希望自定义 NSWindowController 具有 @property 来处理文本字段中的字符串值和 NSImageViews 中的图像值等内容。因为我不需要访问器中的新颖代码,所以我想@synthesize它们。不幸的是(对我来说),在 @synthesize property=ivar 中没有使用键路径的选项。

显而易见的解决方案是编写我自己的表单访问器

- (void)setTitle:(NSString *)title
{
[titleTextField setStringValue:title];
}

- (NSString *)title
{
return [titleTextField stringValue];
}

但我不想为多个属性中的每一个都手动执行此操作。

有没有更简单的方法?也许是设置属性以转发到另一个对象的特定属性(除了 objectValue 等实际上不是正确的属性)的通用方法?

最佳答案

如果您实现valueForUndefinedKey:在你的类中,你应该有最后一次机会来解决任何键值路径查找并将它们全部转发到另一个对象。不过,这当然不是高性能的,并且只有当您传递的大多数属性名称与目标对象的属性名称匹配时,才会给您带来显着的 yield 。

关于cocoa - 将属性访问器转发到 ivar 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4298424/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com