gpt4 book ai didi

objective-c - 使用结构清理绑定(bind)

转载 作者:搜寻专家 更新时间:2023-10-30 19:45:22 26 4
gpt4 key购买 nike

我有一个模型类,它具有 NSSize 和 NSPoint 实例变量非常有意义。这很可爱。

我正在尝试为此对象创建一个编辑界面。我想绑定(bind)到 size.width 等等。这当然行不通。

解决此问题的最干净、最 Cocoa-y 的解决方案是什么?当然,我可以为我使用的每个结构的各个成员编写单独的访问器,但似乎应该有更好的解决方案。

最佳答案

您不必为所有成员创建单独的访问器,您可以只为您关心的类型创建包装器,例如:

@interface SizeWrapper : NSObject {
CGFloat width, height;
}
@property (readwrite) CGFloat width, height;
- (id)initWithSize:(NSSize)sz;
- (NSSize)sizeValue;
@end

@implementation SizeWrapper
@synthesize width, height;

- (id)initWithSize:(NSSize)sz {
if (self = [super init]) {
width = sz.width;
height = sz.height;
}
return self;
}

- (NSSize)sizeValue {
return NSMakeSize(width, height);
}
@end

关于objective-c - 使用结构清理绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2754503/

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