[英]Sort NSDates inside NSDictionary inside NSArray?
當前在我的應用程序中,我有一個從NSUserDefaults加載的NSArray。 NSArray中的每個對象都是一個NSDictionary,具有大約5個不同的鍵。 我根據其中的NSDate重新排序NSDictionary 。 我不想單獨對NSDates進行排序。
我嘗試使用以下代碼執行此操作:
NSComparator sortByDate = ^(id dict1, id dict2) {
NSDate* n1 = [dict1 objectForKey:@"Date"];
NSDate* n2 = [dict2 objectForKey:@"Date"];
return (NSComparisonResult)[n1 compare:n2];
};
[self.cellArray sortUsingComparator:sortByDate];
盡管即使執行了代碼也沒有任何反應。 我對如何根據NSDictionary中的內容重新排序感到困惑。
誰能對此提供任何見解?
謝謝!
您可以嘗試以內聯方式對其進行排序,但是我懷疑這會產生重大影響。 但是我可以說我永遠不會抽象出我的障礙。 我也肯定會嘗試使用NSLogging來確保您獲得有效的NSDate。
[cells sortUsingComparator:^NSComparisonResult(id obj1, id obj2) {
NSDate *n1 = [obj1 objectForKey:@"Date"];
NSDate *n2 = [obj2 objectForKey:@"Date"];
if (n1 > n2) {
return NSOrderedAscending;
} else (n1 < n2) {
return NSOrderedDescending;
} else {
return NSOrderedSame;
}
}];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.