4

Core Data を使用してデータを保存および取得する iOS 用のアプリがあります。自然な並べ替え順序
で NSString 型のフィールドで並べ替えられたデータを取得するにはどうすればよいですか?

今のところ結果は次のとおりです。

100_title
10_title
1_title

私は欲しい:

1_title
10_title
100_title
4

1 に答える 1

10

たとえば、Core Data fetch リクエストのソート記述子でlocalizedStandardCompare:をセレクターとして使用できます。

NSSortDescriptor *titleSort = [[NSSortDescriptor alloc] initWithKey:@"title"
                                  ascending:YES 
                                   selector:@selector(localizedStandardCompare:)];
[fetchRequest setSortDescriptors:[titleSort]];

スウィフト 3:

let titleSort = NSSortDescriptor(key: "title",
                    ascending: true,
                    selector: #selector(NSString.localizedStandardCompare))
fetchRequest.sortDescriptors = [sortDescriptor]

またはそれ以上

let titleSort = NSSortDescriptor(key: #keyPath(Entity.title),
                    ascending: true,
                    selector: #selector(NSString.localizedStandardCompare))
fetchRequest.sortDescriptors = [sortDescriptor]

ここで、「Entity」は Core Data 管理オブジェクト サブクラスの名前です。

于 2013-01-30T13:27:03.230 に答える