У меня есть контроллер табличного представления, отображающий список сообщений. Я хочу, чтобы пользователь мог выбирать различные варианты сортировки для своих сообщений. Некоторые возможные варианты сортировки могут быть самыми последними, читать / не читать, по отправителю и т. Д.
В своих мыслях я спорю о том, как правильно управлять базовым списком Сообщений. Вот мой текущий план:
У меня есть объект модели MessageList. Я добавлю свойство sortedBy , чтобы любой контроллер мог проверить текущий метод сортировки и прибегнуть к списку, если это необходимо. MessageList должен отвечать за правильную вставку новых сообщений в зависимости от выбранного метода сортировки.
Мне нравится этот подход, потому что мне не нужно делать отсортированную копию MessageList. Он также упрощает работу контроллера (indexPath.row == indexOfMessageInList).
Кто-нибудь был в подобной ситуации и нашел лучший подход?