iOS 將數(shù)組模型按時(shí)間順序排序

在一個(gè)數(shù)據(jù)的模型中含有時(shí)間的屬性及其他一些屬性,由于加入模型的時(shí)候數(shù)據(jù)是無(wú)序的,需求為在UI上顯示為按時(shí)間降序整合

由于存儲(chǔ)的時(shí)間("2017-06-22 11:34:21")是nsstring 類型的,需要將轉(zhuǎn)化為時(shí)間戳

//將時(shí)間轉(zhuǎn)化為時(shí)間戳

+(NSString *)stampWithTime:(NSString *)timestr

{

????????NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

????????[formatter setDateStyle:NSDateFormatterMediumStyle];

????????[formatter setTimeStyle:NSDateFormatterShortStyle];

????????[formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; // ----------設(shè)置你想要的格式

????????//NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];

????????NSTimeZone *timeZone = [NSTimeZone systemTimeZone];//使用系統(tǒng)的時(shí)區(qū)

????????[formatter setTimeZone:timeZone];

????????NSDate* date = [formatter dateFromString:timestr]; //將字符串按 ? ? formatter轉(zhuǎn)成nsdate

????????NSString *timeSp = [NSString stringWithFormat:@"%ld", (long)[date timeIntervalSince1970]];

????????return timeSp;

}

然后在進(jìn)行排序 MsgModel為自己數(shù)據(jù)源的模型

//MARK將模型數(shù)組按時(shí)間降序排序

-(NSArray *)comparePark

{

????????NSArray *array =[self.eventsArray ????sortedArrayUsingComparator:^NSComparisonResult(id obj1,id obj2) {

????????MsgModel *object1 = (MsgModel *)obj1;

????????MsgModel *object2 = (MsgModel *)obj2;

????????if ([object1.evenkind doubleValue] < [object2.evenkind doubleValue]) {

????????????????return NSOrderedDescending;

????????} else if ([object1.evenkind doubleValue] > [object2.evenkind doubleValue]) {

????????????????return NSOrderedAscending;

????????}

????return NSOrderedSame;

}];

return array;

}


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容