2016-03-08 54 views
0

我目前可以查询解析类,但无法弄清楚如果返回值与查询匹配时如何更改标签文本。我对客观的C和解析是比较新的,所以我对这个主题的知识很少。我的查询看起来像这样(与我想要在下面实现的文本)。解析:查询更改标签文本

PFQuery *FTQ0 = [PFQuery queryWithClassName:@"Class1"]; 
[FTQ0 whereKey:@"Location" equalTo:@"The Shop"]; 

//Label.text = query (object?) 

在此先感谢。

回答

0

事情是这样的:

PFQuery *query = [PFQuery queryWithClassName:@"Class1"]; 
[query whereKey:@"Location" equalTo:@"The Shop"]; 

[query getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error) { 
    if (!error && object) { 
     // Do your stuff 
     Label.text = [[object objectForKey:@"YOUR KEY"] stringValue]; 
    } else { 
     // Error or null object 
    } 
}]; 

在这个例子中,查询只返回的第一个对象。

0

这是一个解决方案。您必须小心,因为可能有许多对象具有密钥Location并等于The Shop。这就是解析返回一个对象数组的原因。在这种情况下,我选择数组中的第一个对象并显示它。

PFQuery *query = [PFQuery queryWithClassName:@"Class1"]; 
[query whereKey:@"Location" equalTo:@"The Shop"]; 
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) { 

     if (!error) { 

      Label.text = [NSString stringWithFormat:@"%@", [[objects firstObject] objectForKey:@"WHATEVER YOU WANT TO DISPLAY EX. NAME, LOCATION..."]] 
     } else { 
      // Log details of the failure 
      NSLog(@"Error: %@ %@", error, [error userInfo]); 
     } 
}]; 

欲了解更多信息,请访问https://parse.com/docs/ios/guide

0

非常感谢您的快速和有益的反应!这是一个困扰我的问题!代码提供了工作!

谢谢!