UITableViewController 无法识别的选择器发送到实例 [英] UITableViewController unrecognized selector sent to instance

查看:31
本文介绍了UITableViewController 无法识别的选择器发送到实例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我传递一个整数时,我有一个 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆