テーブルビューコントローラーで使用するためのいくつかの配列を含む可変配列があります。配列には、タイトルとその他の情報が含まれています。マスター配列の配列を、含まれるタイトルのアルファベット順に並べ替えたいと思います。タイトルにキーを割り当てました:
NSString *title = @"objectTitle";
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:_storedTitle.text, title, nil];
NSArray *newArray = @[@"Login", dict, _storedUsername.text, _storedPassword.text];
newArray を masterArray に格納し、次のように配列を並べ替えようとします。
//sort array alphabetically
NSSortDescriptor *titleDescriptor = [[NSSortDescriptor alloc] initWithKey:@"objectTitle" ascending:YES];
NSArray *sortDescriptors = @[titleDescriptor];
NSArray *sortedArray = [_masterArray sortedArrayUsingDescriptors:sortDescriptors];
_masterArray = sortedArray.copy;
titleDescriptor が格納されているインデックスを指定していないため、これは機能していません。どうすればいいですか?
マスター配列の特定のインデックス (インデックス) でタイトルにアクセスする場合、次のように実行されます。
NSLog(@"%@", [[[_masterArray objectAtIndex:index] objectAtIndex:1] objectForKey:@"objectTitle"]);