2015-03-02 89 views
-1

我有從JSON填充數據的talbeView。一個我的文本標籤填入NSString,有時它輸出0(NSNULL),顯然,這不是假設在單元格文本標籤上輸出。正確的NSString輸出

以下代碼:

if ([(cell.myNameLabel.text) isEqual: @"0(NSNull)"]){ 
     cell.myNameLabel.text = @"No Name"; 
    } 

是不行的,我不知道爲什麼?

如何解決這個問題?

+0

嘗試'isEqualToString'。 – gabbler 2015-03-02 08:02:29

+0

仍然不能正常工作 – 2015-03-02 08:18:33

回答

2

數據從這裏JSON使用填充像這樣:

//use accordingly that it may contain either NSDictionary or NSArray. 
NString *strValue = youJSONDataArray[indexPath.row]; 

if ([value isEqual:[NSNull null]] || value.length == 0) { 
    strValue == @""; 
} 

UILabel中設置字符串值如下:

cell.myNameLabel.text = strValue; 
+0

謝謝!現在它適合我;) – 2015-03-02 08:27:00

1

NSJSONSerialization使用NSNull來指示空的JSON值。

試試這個:

if ([cell.myNameLabel.text isEqual:[NSNull null]]) { 
    // … 
} 

但你可能會想解析,使你的代碼是不是有NSNull檢查散落過程中剝離出NSNull秒。

1

如果JSON響應有一個空值,那麼其通過NSNull表示通過NSJSONSerialization類,因此您可以修改代碼以

if ([cell.myNameLabel.text isEqual:[NSNull null]]) { 
// your logic here 
}