DBPostListViewController有一个需要设置的NSArray * postList。
我一直在
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UITableViewController setPostList:]: unrecognized selector sent to instance 0x6e493d0
在setPostList函数的prepareForSegue中:
NSArray *tempAry = [str componentsSeparatedByString:@"|@|"];
NSMutableArray *postArray = [[NSMutableArray alloc] initWithCapacity:[tempAry count]];
for (NSString *entry in tempAry) {
DBPost *tempPost = [[DBPost alloc] initWithString:entry];
[postArray addObject:tempPost];
}
DBPostListViewController *dest = [segue destinationViewController];
[dest setPostList:postArray];
答案 0 :(得分:3)
您的错误消息说明了这一点:
-[UITableViewController setPostList:]: unrecognized selector
您可以在以下代码行中发送该消息:
DBPostListViewController *dest = [segue destinationViewController];
[dest setPostList:postArray];
Objective-C是动态类型的,因此即使您已将dest
声明为DBPostListViewController
,它也可以是任何Objective-C对象。在这种情况下,它恰好是UITableViewController
。
您忘记在storyboard文件中设置自定义类,因此UIKit只是创建一个简单的UITableViewController实例。修复故事板并重新运行您的应用。