Ios 从分析对象设置UIPickerView中的选定行
在视图中有一个文本字段和一个选择器视图。选择器视图项是从解析查询加载的。 文本字段文本始终是选择器视图项之一。 选择器视图所选项目必须与文本字段文本相同。这是我目前的代码,但它引发了一个异常:Ios 从分析对象设置UIPickerView中的选定行,ios,Ios,在视图中有一个文本字段和一个选择器视图。选择器视图项是从解析查询加载的。 文本字段文本始终是选择器视图项之一。 选择器视图所选项目必须与文本字段文本相同。这是我目前的代码,但它引发了一个异常: PFQuery *query = [PFQuery queryWithClassName:@"floors"]; [query whereKey:@"floor_restaurant" equalTo:self.restaurante.objectId]; [query orderByDescending
PFQuery *query = [PFQuery queryWithClassName:@"floors"];
[query whereKey:@"floor_restaurant" equalTo:self.restaurante.objectId];
[query orderByDescending:@"createdAt"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
2015-02-28 21:03:20.707 RestAppXXI[675:60b] -[PFObject isEqualToString:]: unrecognized selector sent to instance
如果(!错误){
_pickerData=对象
for (int i = 0; i < [objects count]; i++)
{
if ([[objects objectAtIndex:i] isEqualToString: self.floor_name_text.text]){
[self.floor_picker selectRow:i inComponent:0 animated:YES];
break;
}
}
[self.floor_picker reloadAllComponents];
}
else {
NSLog(@"error");
}
我是新的解析与iOS和任何帮助是欢迎的
编辑:
- (NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
PFObject *object = _pickerData[row];
return object[@"floor_name"];
}
多亏了rmaddy的评论和一点搜索,我已经解决了我的问题,以下是最终有效的代码:
[PFQuery *query = [PFQuery queryWithClassName:@"floors"];
[query whereKey:@"floor_restaurant" equalTo:self.restaurante.objectId];
[query orderByDescending:@"createdAt"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
_pickerData = objects;
for (int i = 0; i < [objects count]; i++)
{
NSString *textoactual = self.floor_name_text.text;
if ([[[objects objectAtIndex:i] objectForKey:@"floor_name" ] isEqualToString: textoactual]){
[self.floor_picker reloadAllComponents];
[self.floor_picker selectRow:i inComponent:0 animated:YES];
break;
}
}
}
else {
NSLog(@"error");
}
}];
[PFQuery*query=[pfqueryquerywithclassname:@“floors”];
[查询whereKey:@“floor_restaurant”等同于:self.restaurant.objectId];
[查询orderByDescending:@“createdAt”];
[查询findObjectsInBackgroundWithBlock:^(NSArray*对象,NSError*错误){
如果(!错误){
_pickerData=对象;
对于(int i=0;i<[对象计数];i++)
{
NSString*textoactual=self.floor\u name\u text.text;
if([[[objects objectAtIndex:i]objectForKey:@“floor_name”]IsequalString:textoactual]){
[self.floor_picker重新加载所有组件];
[self.floor_picker selectRow:i不完整:0动画:是];
打破
}
}
}
否则{
NSLog(@“错误”);
}
}];
显示标题for:forComponent:
方法的代码。错误似乎在比较[objects objectAtIndex:i]的for
循环中
到某个字符串。数组包含PFObject
实例,而不是字符串。@rmaddy,您知道如何将其中一个PFObjects行与文本字段文本进行比较吗?您需要将文本字段文本与PFObject
@rmaddy中的特定值进行比较,您建议更改此:[objects objectdexatin:I]对于PFObject中的特定值?