NSOutlineView 列不排序

NSOutlineView column doesn't sort

我无法在 Mac OS X 10.10...

中对 NSOutlineView 进行排序
    let tableColumn = outlineView.tableColumnWithIdentifier("LocationName")
    println(tableColumn?.description)
    let sorter = NSSortDescriptor(key: "self", ascending: false)
    tableColumn!.sortDescriptorPrototype = sorter
    outlineView.reloadData()

上面的代码都没有在 Interface Builder 中设置排序属性。

也许 "self" 有问题?

NSOutlineView 列包含 swift 个字符串,比较:应该可以,对吧? 也许我只需要写一个比较器?

设置 table 列的 sortDescriptorPrototype 不会导致其排序。如果大纲视图按该列排序,它只是确定该列 的顺序。

要对大纲视图进行排序,您可以设置大纲视图的 sortDescriptors 属性。但是,如果您使用数据源(而不是绑定)来提供大纲的数据,大纲视图将告诉您的数据源通过调用其 -outlineView:sortDescriptorsDidChange: 方法对其数据进行排序。然后,您的数据源有责任对其数据进行实际排序,以便大纲视图的后续查询按排序顺序获取数据。您的数据源还负责根据项目在订单中的移动方式调整大纲视图的选择。