我将NSTableView绑定到NSArrayController。出于某种原因,我根本无法对列进行排序。有些列甚至不显示排序方向箭头。有些人会显示它,但点击它只是切换箭头方向,它实际上根本没有对内容进行排序。
这一切都在IB中,所以没有代码可以显示。
在NSArrayController上检查自动重新排列内容。
表视图表内容部分是绑定的,并且有效。表格视图绑定下面有一个排序描述符区域,但我不知道该怎么设置。我尝试将它绑定到同一个数组控制器并将Controller Key设置为arrangeObjects,但这会导致运行时崩溃。 (它试图显然发送"键"选择器。)
编辑:这是一个说明问题的示例项目。表格标题显示排序方向箭头,但单击标题时表格数据不会更改。 https://www.dropbox.com/s/yhvpxo9b73vj9it/bindingtest.zip
答案 0 :(得分:1)
在属性检查器下,您需要提供排序键和选择器(比较:)。 这将开始对表列进行排序,您需要为每个表列设置它。
此外,供您参考,您可以从Project
获取我的示例代码启动应用程序后,您可以单击“加载抽屉”和“加载表”,然后单击标题对列进行排序。在此示例中,我将排序键设置为与值绑定键相同。
我希望这会有所帮助。