iOS 實戰之後臺返回資料為空造成程式崩潰

2021-09-24 22:08:29 字數 1076 閱讀 7420

這裡呢是整理的一位老鳥的東西,好東西得分享

大致實現思路就是迴圈便利做比較,如果發現是nsnull型別的就把值改為空字串;這樣的好處就是當資料請求回來,刪除一下資料裡面為型別的東西,避免在直接取的時候產生程式崩潰問題;

兩個方法,乙個返回nsarray,乙個是nsdictionary,根據需求選擇

.h 檔案

/***  伺服器返回的資料為時的處理

**  @param dic 經處理過後的資料,資料型別為字典,避免直接取資料時出現程式崩潰現象。

*/- (nsdictionary *)deleteempty:(nsdictionary *)dic;

/***  伺服器返回的資料為時的處理

**  @param dic 經處理過後的資料,資料型別為陣列,避免直接取資料時出現程式崩潰現象。

*/- (nsarray *)deleteemptyarr:(nsarray *)arr;

.m 檔案

@implementation nsobject (deletearrordeletedicbothnull)

- (nsdictionary *)deleteempty:(nsdictionary *)dic

else if ([value iskindofclass:[nsarray class]])

else}}

for (id obj in set)

for (id obj in dicset.allkeys)

for (id obj in arrset.allkeys)

return mdic;

}- (nsarray *)deleteemptyarr:(nsarray *)arr

else if ([obj iskindofclass:[nsarray class]])

else}}

for (id obj in set)

for (id obj in dicset.allkeys)

for (id obj in arrset.allkeys)

return marr;

}@end

實戰iOS7之後臺多工

在wwdc2013中 水果公司把ios7的中後台多工單獨開出來乙個session講述 session 204 what s new with multitasking 其對後台多工的改動如下 list 1.改變了後台任務的執行方式 background task 2.增加了後台獲取 backgrou...

iOS 過濾後台返回nil的資料

後台返回的json字串經常會返回nsnull型別的資料,在生成model的時候如果乙個個手工判斷,屬性很多的時候很麻煩。其實在mjextension中已經幫我們提供了這樣處理空值或型別轉換的方法。我們只需要在這裡寫實際專案需要過濾nil的屬性即可。舊值換新值,用於過濾字典中的值 param oldv...

iOS 後台返回json資料格式錯誤無法解析

場景 mk網路請求,後台返回有資料,但是因為json資料中某些欄位有換行符無法解析,即json格式錯誤,如果後台不給轉碼,就需要自己解決,r n是ascii碼表中的換行符,將這些字段忽略掉基本就沒有問題了 nsstring resultstring self responsestring self為...