因此,在我的应用中,我想通过单击UIButton
来实现用户个人资料,我已经完成了所有功能。
当选择indexPath.section
并显示用户信息时,我首先添加了功能,因此我想通过按钮执行相同的操作。
这是我在-(void)didSelectRow
中的代码
PFObject *object = [self.objects objectAtIndex:selectedRow];
PFUser *user = [object objectForKey:@"userTookPhoto"];
self.userInfo = user;
self.userInfo是
PFUser
文件中的属性.h
然后在我的
PrepareSegue
中,我有这个:else if ([segue.identifier isEqualToString:@"homeToProfile2"])
{
transfer.userInformationObject = self.userInfo;
}
我运行该应用程序,然后点击按钮以推动segue,该应用程序崩溃并说
self.userInfo
为NULL。当我在
NSlog
中使用didSelectRow
时,它具有正确的信息以及所有用户详细信息,当我在
NSlog
中将其设置为prepareSegue
时会崩溃。 最佳答案
如果要访问PFObjects
中的PFObject
对象,则需要在PFQuery中包括includeKey:
方法,并在字段中输入PFObject
是...。
因此,如果您在类名称为“消息”的PFUser
中访问PFObject
对象,则可以像这样创建查询...
PFQuery *query = [PFQuery queryWithClassname:@"Message"];
[query whereKey:@"toUser" equalTo:[PFUser currentUser]];
[query includeKey:@"toUser"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error){
for (PFObject *obj in objects) {
NSLog(@"%@", [obj objectForKey:@"toUser"]);
}
}];
log语句将返回PFUser对象。
这是指向您在Parse Blog上的问题的解释的链接
关于ios - 将PFUser作为PFObject传递时遇到麻烦,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27351961/