因此我尝试将数据从我的单元格(填充queryForTable
方法)通过segue传递到另一个viewController
。我使用prepareForSegue
方法,我的代码如下:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"profile"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
PFObject *object = [self.objects objectAtIndex:indexPath.row];
//UINavigationController *nav = [segue destinationViewController];
ProfileViewController *userProfile = [segue destinationViewController]; //(ProfileViewController *) nav.topViewController;
userProfile.userInfo = object;
}
}
在我的VC中我定义了属性:
@property (weak, nonatomic) PFObject *userInfo;
但是当我运行我的代码时,我收到错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController setUserInfo:]:
答案 0 :(得分:0)
看起来你正在拉出segue的viewController不是ProfileViewController
- 你得到的错误是:
-[UIViewController setUserInfo:]:
注意UIViewController
,而不是ProfileViewController
。这似乎表明你的segue的目标viewController并不完全符合你的想法。
在Storyboard中检查目标viewController的类。是否设置为ProfileViewController
?你的ProfileViewController
是否嵌入了另一个viewController(就像一个navigationController - 看着你注释掉的代码,你似乎已经把它当作这样处理过了)?如果是这样,您可能需要进行大量挖掘才能获得对正确viewController的引用。