【问题标题】:Segue issue with SWRevealViewControllerSWRevealViewController 的 Segue 问题
【发布时间】:2015-01-03 19:20:11
【问题描述】:

我正在尝试从SWRevealViewController 的侧菜单页面中分离并将数据传输到另一个视图控制器。它崩溃了,我遇到了这个问题`-[UINavigationController setStr1:]: unrecognized selector sent to instance 0x7f8c92224c80 '

当我使用Reveal View Controller Push Controller 方法推送到另一个视图控制器时。

另一方面,在其他视图控制器中,我使用的是SHOW 而不是SWRevealViewControllerSeguePushController,它工作正常,不会崩溃。我正在使用故事板。

请问我的问题在哪里?

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

    if ([segue.identifier isEqualToString:@"TESTTEST"]) {

        ViewController *destViewController = segue.destinationViewController;
        destViewController.str1 = @"data pass";
    }
}

【问题讨论】:

  • 这可能是因为您设置了ViewControllerstr1 属性,而不是您应该使用CustomViewController *destViewController

标签: ios objective-c storyboard


【解决方案1】:

错误表明 segue 目标视图控制器是导航控制器(因此不响应 setStr1 选择器)。所以看起来你的ViewController 嵌入在故事板的导航控制器中。如果是这样,请按如下方式更改您的代码:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"TESTTEST"]) {
        UINavigationController *navigationController = segue.destinationViewController;
        ViewController *destViewController = navigationController.topViewController;
        destViewController.str1 = @"data pass";
    }
}

【讨论】:

    猜你喜欢
    • 2014-11-23
    • 2020-02-10
    • 2017-07-11
    • 2015-09-30
    • 2015-12-01
    • 2016-02-22
    • 2016-11-15
    • 2017-06-09
    • 2016-12-22
    相关资源
    最近更新 更多