私のテーブルはfetchedResultsController
. データを並べ替えたいのですが、条件付きで次の 2 つの条件があります。
- ユーザーの名前。
- スコア。
を。スコアがない場合、表はユーザー名でアルファベット順にソートする必要があります。
b. ユーザーがスコアを持っている場合、そのスコアは上に行く必要があります。
私はこれを試しました
NSSortDescriptor *sd1 = [[NSSortDescriptor alloc] initWithKey:@"userScore" ascending:NO];
NSSortDescriptor *sd2 = [[NSSortDescriptor alloc] initWithKey:@"displayName" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObjects:sd1, sd2, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
正常に動作しますが、アプリの再起動後、テーブルはユーザー名のみでソートされます。