2017-10-27 10 views
5

sectionNameKeyPathがカテゴリに属する​​セクションごとにグループ化する場合は、NSFetchedResultsControllerを使用しています。NSFetchedResultsControllerのsectionNameKeyPathに関係なく並べ替え順序を変更します。

私のカテゴリは、大人、子供、ビジョン、なしです。大人、子供、なし、ビジョン

降順のソート:ビジョン、なし、子供、大人

私が欲しいなしカテゴリは関係なく、常にソート順の最後に来てソート

昇順。

昇順にソート希望:大人、子供、ビジョン、なし

は、所望の降順を:ビジョン、子供、大人、なしを

次のように使用するコードは次のとおりです。

let fetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: managedOC, sectionNameKeyPath: "category", cacheName: nil) 

答えて

0

私は以来だと思いますStringとStringの値をアルファベット順に並べ替えるだけで、カテゴリを格納します。 データベースに数値フィールドを作成できますか? 大人= 1、子供= 2、ビジョン= 3、なし= 4、 のような数値を格納することで、データを昇順または降順で簡単に並べ替えたり並び替えることができます。これがあなたのお役に立てば幸いです。

+0

降順の場合も、NONEを最後の項目にする必要があります。 – Soumen

+0

"Adult = 1、Child = 2、Vision = 3"のデータを並べ替え順に最初に取得し、リスト#1に保存するようにできます。次に、 "None"の項目だけを取り出してリスト#2に格納し、最後に両方のリストをマージします。 – Waseem

関連する問題