Моя настройка:
- У меня есть база данных sqlite, из которой я заполняю NSMutableArray объектов NSDictionary, это источник данных для моего NSTableView.
- Один из столбцов содержит «время», время - это число с плавающей запятой, которое содержит секунды.
- Я хотел бы отобразить значения в этом столбце в виде минут: секунд. Например, мои данные будут 123.4329387. Я хочу отобразить 2:03, что у меня нет проблем с подклассом NSFormatter (или NSNumberFormatter), примененным к моему NSTextField в столбце.
- У меня настроена сортировка с использованием атрибутов столбцов таблицы в IB, просто для ключа сортировки установлено значение «время», а для селектора установлено значение «сравнение:», которое прекрасно работает без средства форматирования.
В настоящее время это дает мне что-то подобное, когда я сортирую (по убыванию)
1: 37, 1:31, 0:10, 0:10, 0:09, 1:30, 1:30, 1:26, 0: 09
и подобная ерунда, похоже, что-то происходит, но определенно не отсортировано.
Как заставить сортировку смотреть на базовые данные вместо отформатированного значения? В качестве альтернативы, как я могу указать пользовательский метод сортировки и куда я могу поместить код для этого метода? Я много искал и не нашел ничего, что могло бы помочь мне с этой проблемой, любая помощь с этим наиболее ценится.