我有talbeView从JSON填充数据。我的一个文本标签填充NSString
,有时输出0(NSNULL)
,显然不会在单元格文本标签上输出。
以下代码:
if ([(cell.myNameLabel.text) isEqual: @"0(NSNull)"]){
cell.myNameLabel.text = @"No Name";
}
Isn不工作,我想知道为什么?
如何解决这个问题?
答案 0 :(得分: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;
答案 1 :(得分:1)
NSJSONSerialization
使用NSNull
表示空JSON值。
请改为尝试:
if ([cell.myNameLabel.text isEqual:[NSNull null]]) {
// …
}
但是您可能希望在解析过程中删除NSNull
,以便您的代码不会被NSNull
检查错过。
答案 2 :(得分:1)
如果JSON响应具有空值,则NSNull
由NSJSONSerialization
类指示,以便您可以将代码修改为
if ([cell.myNameLabel.text isEqual:[NSNull null]]) {
// your logic here
}