網絡數據常用解決方案

1、查看JSON數據
2、服務器返回空數據

1、JSON數據

    // 1、拿到路徑
    NSString *path = [[NSBundle mainBundle] pathForResource:@"top250" ofType:@"json"];
    
    // 2.創建tops
    self.tops = [[NSMutableArray alloc] init];
    
    // 解析json,kNilOptions效率很好
    NSData *data = [NSData dataWithContentsOfFile:path];
    NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];
    [dict writeToFile:@"/Users/mac2/Desktop/top.plist" atomically:YES];

2、如果服務器返回數據為nil或null如何解決

// 宏定義
#define NULL_TO_NIL(obj) ({ __typeof__ (obj) __obj = (obj); __obj == [NSNull null] ? nil : obj; })

// 字典轉模型賦值的
cinema.lowPrice = NULL_TO_NIL([dict objectForKey:@"lowPrice"]);

// cell 中賦值判斷
if (cinema.lowPrice == NULL) {
        self.priceLabel.text = @"暫停服務";
    } else {
        self.priceLabel.text = [NSString stringWithFormat:@"¥%@", cinema.lowPrice];
    }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,981評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,467評論 25 708
  • 五 何去何從? 經過痛苦的思考,現實里每個人最終都會帶著一步三回頭的猶豫或者留戀,做出自己的抉擇,因為這是一道人生...
    呼市彩妮閱讀 361評論 0 1
  • 一、不控制 二、只分享快樂 三、看到正面,指出正面,支持和托起別人 四、撫摸 五、感恩對方的存在 六、敞開接受愛和...
    axjl如意閱讀 250評論 0 0
  • 最近生活消費類產品的優惠力度不斷加大,從外賣、打車、電商等服務中都能看出來。下面我將分析 打車類、閱讀類、電商類應...
    愛吃愛花愛生活的UX人閱讀 1,821評論 4 17