一般的處理方式:
網絡請求->拿到返回數據(目前比較流行的跨平臺格式語言為json)->根據返回數據生成數據模型類的實例對象->將數據對應顯示到界面
但是如果數據模型比較復雜繁瑣肚邢,就需要第三方庫來幫忙了。
第三方庫MJExtension? JSON解析框架
demo:以數組為例马绝,此框架中提供了JSON多種數據類型處理方式
JSON數據中為字典包含數組巷折,將數組存入(NSArray *)jsonArray
模型數據類型為 GYModel類 繼承自NSObject
json數組 -> 模型數組 轉化方法:
+ (NSMutableArray *)objectArrayWithKeyValuesArray:(NSArray *)keyValuesArray
MJExtension中的該方法為NSObject的category中的方法裂问,可簡化數據處理過程,按照調用的類的數據模型進行數據處理,返回NSMutableArray數組掏愁,數組中的元素即GYModel類的實例對象衫画。
NSMutableArray * modelArray=
[GYModel objectArrayWithKeyValuesArray:jsonArray];
如果是由表格來顯示模型數據毫炉,復雜的數據模型表格的單元格定義也會多樣化。自定義的表格對應不同Identifier削罩,模型數據中可包含判定條件參數碘箍,調用判定方法可返回對應的Identifier。
GYModel* model=modelArray[indexPath.row];
NSString *ID = [GYCell idForRow:model];
//重用生成自定義cell并將模型數據外部傳入鲸郊,故事板中各種樣式的cell統(tǒng)一綁定GYCell類
GYCell * cell = [tableView dequeueReusableCellWithIdentifier:ID];
cell.model=model;
不同樣式的表格所對應的數據也都不盡相同丰榴,可根據實際情況在GYCell類中進行頁面設計。