*

CoreDataのソートとsectionNameKeyPathの関係

公開日: : 最終更新日:2014/05/20 Tips , , ,

CoreDataをフェッチするときに、indexPathのsectionにできるsectionNameKeyPathの設定ができますが、これに関する覚書的な話題になります。
sectionNameKeyPathにするプロパティはStringでないといけないようですが
(訂正:Stringでなくてもいける模様)、設定しておくとfetchedResultsControllerがsection/row管理が、UITableViewのsection/row管理にマッチして、セクション分けしてもUITableViewの表示が非常にスムーズにできるのが利点です。

このsectionKeyPathをソートする場合は、通常のプロパティと同様にSortDescriptorの配列に入れれば処理をしてくれるのですが、そのときに注意しないといけないのが順番。
sectionKeyPathの項目はNSSortDescriptorのArrayの最初に指定しないと結果がソートされないのです。

作り始めにはグルーピングなしで作ってて、後からsectionNameKeyPathを追加して…とやると罠にハマります(そしてハマりました)。

関連記事

UICollectionViewが画面回転した時にレイアウトが崩れた時の対応

UICollectionViewCellのサイズを、内容に合わせて動的に変えた時に起こる問題に関して

記事を読む

UICollectionViewのヘッダとフッタの設定

UICollectionViewで慣れないのがヘッダフッタで、毎度「どうやって設定するんだっけ…」と

記事を読む

iOS7でのPopover内サイズの指定

UIPopover内で表示する場合のViewControllerのコンテンツサイズ設定に関してのメモ

記事を読む

アプリ内で自動スリープの設定を無効化する

「設定」アプリ内で設定したスリープ時間設定を無効にするためのコード。 アプリがバックグラウンドにな

記事を読む

UIActionSheetの文字がブレて多重表示される

UIActionsheetを使っていて、iOS7/iPadの組み合わせで起こる不具合らしき挙動が起こ

記事を読む

iOS6時代のアプリのiOS7への対応

やや古い情報になるが、iOS7対応に関して自分がやったことの覚え書き。いろんな所から拾って来た情

記事を読む

ENMLからHTMLへの変換

最近EvernoteAPIをいじっているので、コレに関するノウハウをとりあえず断片的に引っかかったと

記事を読む

iOS8のシミュレーターでLocalizationのテストをする

iOS8.1のシミュレーターでは、従前できていたシミュレーター内での「設定」(Setting)からの

記事を読む

Bitbucket課題の記法サンプル

Bitbucketの課題、およびwikiで利用できる記法についての記事です。 利用できる記法に

記事を読む

Xcode5.1のInterfaceBuilderにおける地味な変更点

iOS7.1に合わせてXcode5.1がリリースされました Xcode Release N

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑