我正在尝试创建一个基于视图的 NSTableView,通过 Cocoa 绑定填充。
我的 NSArrayController 指向应用程序委托属性的jobs
数组属性,如下所示:currentUser
我希望该数组中的每个模型都属于类HSJob
:
但是,一旦我将我的表视图绑定到 NSArrayController,它的arrangedObjects
属性出于某种原因认为它属于类HSJob
(我期待一个NSArray
)。
显然,这不允许我将单个单元格内容链接到 Job 对象属性,并且我无法在表格视图中显示任何内容:
那么我在这里做错了什么?
更新
我什至决定实施一些手动值更新通知 + 将所有内容移入 AppDelegate,只是为了进行实验。在这里,我只为一些 NSDictionaries 更改了自己的HSJob
课程。
AppDelegate.h
@property NSArray *things;
AppDelegate.m
@synthesize things = _things;
- (NSArray *)things {
if (!_things)
return @[@{@"name": @"Default Thing"}];
else
return _things;
}
- (void)setThings:(NSArray *)things {
[self willChangeValueForKey:@"things"];
_things = things;
[self didChangeValueForKey:@"things"];
}
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
[self setThings:@[@{@"name": @"Actual Thing"}]];
}
只会显示“默认事物”。即使我things
在应用程序启动后立即为该属性设置了一个新值,该数组也永远不会显示。