數(shù)據(jù)格式
"data" : [
{
"brandId" : "13",
"pinyin" : "A",
"brandName" : "奧迪"
},
{
"brandId" : "44",
"pinyin" : "A",
"brandName" : "阿斯頓·馬丁"
},
{
"brandId" : "45",
"pinyin" : "A",
"brandName" : "奧克斯"
}
]
Model對象
@interface LTBrandItem : NSObject
@property (assign, nonatomic) NSInteger brandId;
@property (copy, nonatomic) NSString *pinyin;
@property (copy, nonatomic) NSString *brandName;
@end
@interface LTBrandCellModel : NSObject
@property (copy, nonatomic) NSString *letter;
@property (strong, nonatomic) NSMutableArray<LTBrandItem*> *list;
@end
排序代碼
NSArray *list = response.data;
NSMutableArray *sections = [NSMutableArray array];
for (NSDictionary *dict in list) {
LTBrandItem *item = [LTBrandItem mj_objectWithKeyValues:dict];
BOOL hasSection = NO; // 是否已經(jīng)有section
for (LTBrandCellModel *section in sections) {
if ([section.letter isEqualToString:item.pinyin]) {
[section.list addObject:item];
hasSection = YES;
break;
}
}
if (!hasSection) {
LTBrandCellModel *section = [LTBrandCellModel new];
section.letter = item.pinyin;
section.list = [NSMutableArray array];
[section.list addObject:item];
[sections addObject:section];
}
}
[sections sortUsingComparator:^NSComparisonResult(LTBrandItem *obj1, LTBrandItem *obj2) {
return obj1.pinyin > obj2.pinyin;
}];
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。