ios - 在 View Controller 之间传递时为空值

标签 ios objective-c segue

<分区>


这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助 future 的读者。

关闭 6 年前

这让我抓狂,因为我以前从未发生过这种事,而且我已经做过几十次了。

在两个 View Controller 之间传递一个值会导致该值为 NULL

我有一个 prepareForSegue: 方法:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString: @"LoginSegue"]) {
        UITabBarController *destinationTabController = [segue destinationViewController];
        ViewController *destinationViewController = destinationTabController.selectedViewController;
        NSLog(@"Logged user is %@.", loggedUser); //This prints out the user correctly
        destinationViewController.currentUser = loggedUser;
    }
}

但是当执行 segue 时,我尝试记录 currentUser 值,它是 NULL

伙计们,有什么想法吗?

最佳答案

标签栏 Controller 不在界面中,因此未选择任何内容。因此 destinationViewControllernil 并且您尝试设置它的 currentUser 没有任何作用。

关于ios - 在 View Controller 之间传递时为空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38489052/

上一篇:android - 声学指纹识别背后的原理是什么?

下一篇:ios - 从 UIViewController 添加 View

相关文章:

swift : Only transfers certain variable when using prepareforsegue function

ios - 是否可以为不同的尺寸类别设置不同的表格 View 单元格行高?

ios - 根据另一个 View 的颜色更改 View 颜色

iphone - iPhone 版 MGTwitterEngine 教程

ios - 重启 View Controller

iphone - 在 Xcode 4.3 中添加 UIViewController 子类

swift - UIViewController 生命周期

IOS 从标签栏项目执行 segue

iphone - 如何从 Sudz 下载源代码

ios - 旋转 UIImageView 数据 -