UITableViewController 无法识别的选择器发送到实例 [英] UITableViewController unrecognized selector sent to instance
问题描述
当我传递一个整数时,我有一个 tableviewcontroller 和一个 detailtableviewcontroller
I have a tableviewcontroller and a detailtableviewcontroller when I pass an integer I get
-[UITableViewController setSurveyNumber:]:发送到实例的无法识别的选择器
奇怪的事情是完全相同的代码适用于 tableviewcontroller 到 -> uiviewcontroller
Bizard thing is exact same code works for tableviewcontroller to -> uiviewcontroller
表格 -> 表格代码
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"pushSurveyDetails"])
{
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
NSInteger row = [indexPath row];
SurveyDetailViewController *surveyController = [segue destinationViewController];
surveyController.surveyNumber=row;
}
}
在 SurveyDetailViewController.h 中
in SurveyDetailViewController.h
@interface SurveyDetailViewController : UITableViewController
{
}
@property int surveyNumber;
@end
SurveyDetailViewController.m
SurveyDetailViewController.m
@implementation SurveyDetailViewController
@synthesize surveyNumber;
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"Survey Number is %i",surveyNumber);
}
为什么会出现这个错误?
why this error occurs?
推荐答案
错误信息表明 [segue destinationViewController]
返回的是 UITableViewController
而不是 SurveyDetailViewController
符合预期.
The error message indicates that [segue destinationViewController]
returns a UITableViewController
and not a SurveyDetailViewController
as expected.
控制器类可以在storyboard文件中设置.
The controller class can be set in the storyboard file.
这篇关于UITableViewController 无法识别的选择器发送到实例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!