У меня есть NSTableView, который содержит несколько столбцов, каждый из которых я настроил для сортировки, сопоставляя ключ сортировки столбца со свойством в моей модели и предоставляя селектор сравнения:. Это прекрасно работает для тех столбцов, которые имеют прямое сопоставление со свойством NSString или NSInteger в моей модели.
Однако у меня есть пара столбцов, которые фактически являются агрегатами данных модели, т.е. мой метод objectValueForTableColumn будет копаться в модели и часто использует два или более свойств для генерации соответствующей строки NSString для отображения в этой строке / столбце.
Я пытался отсортировать эти столбцы, но я не уверен, что идет в ключ сортировки или селектор. Я пытался использовать одно из имен свойств, пытался использовать сравнение :, et c ... но код либо ничего не делает, либо генерирует исключение.
Я прочитал документацию Apple по сортировке NSTableView и искал в Интернете примеры, но не совсем понятно, как следует обращаться с этой ситуацией. Как мне сопоставить эти столбцы с ключом и как происходит сравнение. Как уже упоминалось, данные, отображаемые в таблице, представляют собой строку, которая может показаться сортируемой с помощью сравнения: или есть какой-то механизм для предоставления пользовательской функции сравнения?
Спасибо!