Ios UITextVield中返回的空值

Ios UITextVield中返回的空值,ios,objective-c,parse-platform,Ios,Objective C,Parse Platform,使用Parse.com作为我的后端,并尝试加载用户数据,但遇到一个问题,其中一个字段最初返回(null),而默认情况下不存在任何数据。这是三种方法中唯一使用int作为数据类型而不是string的方法。另外两个尝试加载字符串的字符串(默认情况下也不存在)不会在字段中返回(null),并且按预期为空 代码(如您所见,我尝试使用if条件检查Parse.com并在其(null)的情况下在本地覆盖它,或者至少我尝试-然后在UITextField中没有显示任何内容,而不是(null)),不走运 - (voi

使用
Parse.com
作为我的后端,并尝试加载用户数据,但遇到一个问题,其中一个字段最初返回(null),而默认情况下不存在任何数据。这是三种方法中唯一使用int作为数据类型而不是string的方法。另外两个尝试加载字符串的字符串(默认情况下也不存在)不会在字段中返回(null),并且按预期为空

代码(如您所见,我尝试使用if条件检查Parse.com并在其(null)的情况下在本地覆盖它,或者至少我尝试-然后在UITextField中没有显示任何内容,而不是(null)),不走运

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    PFUser *currentUser = [PFUser currentUser];
    self.age = [NSString stringWithFormat:@"%@", currentUser[@"age"]];
    if (self.age == nil ||  [self.age isEqual: @""])
    {

        self.age = @"0";
        NSLog(@"%@", self.age);
    }
    else{
        NSLog(@"%@", self.age);
    }
    self.usersHomeTown.text = currentUser[@"hometown"];
    self.usersAge.text = self.age;
    self.usersName.text = currentUser[@"name"];

}

问题是您没有检查
currentUser[@“age”]
是否为
nil
。因此,您可以从任何字符串创建字符串。结果字符串永远不会是
nil
。你想要:

PFUser *currentUser = [PFUser currentUser];
id age = currentUser[@"age"];
if (age) {
    self.age = [NSString stringWithFormat:@"%@", age];
else {
    self.age = @"0";
}
我不知道
current[@“age”]
是否返回
nil
[NSNull null]
。上述代码假定它返回
nil
。如果返回
[NSNull null]
,则将
If
语句更改为:

if (age == [NSNull null]) {

尝试改用
if(self.age.text.length)
,因为您总是在创建字符串。一开始似乎可以工作,但如果用户清空UITextField并点击save,那么由于某种原因,当我将else更改为self.age=@“时,UITextField中会出现0,返回视图,有什么想法吗?因为我不知道当点击“保存”时你会做什么,我无法知道,但我可以猜到你一定是在为用户的年龄保存
0