问候,
我有一个 NSTableView 有两列可以正常工作...除了:如果我在 Interface Builder 中为表设置排序描述符,事情会按预期工作,并且 sortDescriptorsDidChange 会按预期调用。但是,如果我没有在 Interface Builder 中设置排序描述符,而是使用它:
[tableView setSortDescriptors:[NSArray arrayWithObject:[[[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES selector:@selector(caseInsensitiveCompare:) ]autorelease]]];
(其中“名称”是最左侧列的标识符)在我的代码中, sortDescriptorsDidChange 永远不会被调用。当我阅读(误读?)Apple 的 NSTableView 文档时,我认为我正在做的事情应该有效。我究竟做错了什么?
PS 我知道我也可以使用 NSArrayController 来完成所有这些工作(如果我这样做的话效果很好),但无论出于何种原因,我都选择不这样做。