連絡先情報の配列の並べ替えを行っています。特定の連絡先の名と姓を入力すると正常に機能しますが、いずれかが欠落している場合は正常に機能しません。
例: John という名前と mickey という名前を入力すると、適切な並べ替えが行われますが、mickey のみを入力すると、最終的に UITableview の # セクションに表示されます。 .
私のコードは以下の通りです、
NSSortDescriptor *sortDescriptorFirstName = [[[NSSortDescriptor alloc] initWithKey:@"firstName" ascending:YES selector:@selector(localizedStandardCompare:)] autorelease];
NSSortDescriptor *sortDescriptorLastName = [[[NSSortDescriptor alloc] initWithKey:@"lastName" ascending:YES selector:@selector(localizedStandardCompare:)] autorelease];
NSArray *sortDescriptors = [NSArray arrayWithObjects:sortDescriptorFirstName,sortDescriptorLastName,nil];
if(favFlag){
favContacts = [[contactsData sortedArrayUsingDescriptors:sortDescriptors] mutableCopy];
[self setListContent:favContacts];
}
else {
contacts = [[contactsData sortedArrayUsingDescriptors:sortDescriptors] mutableCopy];
[self setListContent:contacts];
}
[contactTableView reloadData];