NSArrayController, пользовательская сортировка

У меня есть NSTableView, где каждый столбец привязан к соответствующему значению в NSArrayController. Один из столбцов содержит NSImageCell, отображающий изображение.

Я хочу сортировать по этому столбцу, но очевидно, что сортировка по значению объекта изображения — это не то, что мне нужно. На самом деле я сортирую по комбинации других полей, но не могу понять, как это настроить. Когда я нажимаю на заголовок столбца для соответствующего поля, стрелки сортировки не появляются.

У меня есть NSSortDescriptors, примененные к NSArrayController для сортировки других столбцов, но при сортировке кажется, что все NSSortDescriptors имеют доступ к объектному значению ячейки таблицы.

Мне нужно отсортировать по методу сравнения объект, для которого значение объекта является свойством. Это возможно? Я уже создал подкласс NSArrayController, и кажется, что где-то там было бы неплохо, но я не могу найти в документации ничего, что помогло бы.


person Nick Locking    schedule 18.11.2010    source источник
comment
Подождите, это ключ сортировки в IB? Как это установить программно?   -  person Nick Locking    schedule 18.11.2010


Ответы (1)


Итак, я решил эту проблему, просто создав столбец таблицы в IB и установив там ключ сортировки. Немного обходной путь, но в итоге мой код немного сократился, поэтому я не могу жаловаться. Кажется странным, что вы не можете программно установить ключ сортировки. По крайней мере, не с помощью любого метода, который я могу найти.

person Nick Locking    schedule 19.11.2010