В моем проекте я пролистываю кучу записей sql и заполняю NSMutableDictionary строкой для каждого ключа. Ключи важны, потому что я использую их как заголовки разделов в моем TableView.
У меня проблема в том, что я хотел бы разделы в определенном порядке. Когда я вызываю allKeys, порядок ключей не совпадает с порядком их перехода в NSMutableDictionary. Я более или менее понимаю, почему. Мой вопрос заключается в том, как сделать так, чтобы определенные значения (не в алфавитном порядке) отображались первыми перед остальными значениями.
Примеры строк: «Синий», «Коричневый», «Зеленый», «Оранжевый», «Фиолетовый», «Красный», «Фиолетовый», «Желтый» ...
Мне бы хотелось, чтобы они были упорядочены следующим образом: «Красный», «Зеленый», «Синий», «Коричневый», «Оранжевый», «Фиолетовый», «Красный», «Фиолетовый»
Важной частью являются «Красный», «Зеленый», «Синий», все остальные значения могут быть в алфавитном порядке после этих 3 значений.
Единственное, о чем я могу думать, это упорядочить их в алфавитном порядке, сказав 'sortedArrayUsingSelector: @selector (compare :)', а затем просто попытаться удалить искомые строки и поместить их обратно с меньшим значением индекса, если они существуют. Есть идеи получше? Я не уверен, насколько это эффективно.