gpt4 book ai didi

ios - 从后台返回时,IBOutlets 全部为 nil

转载 作者:行者123 更新时间:2023-11-28 22:17:00 25 4
gpt4 key购买 nike

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
NSString *storyName;
if (isIPAD)
storyName = @"Main_iPad";
else
storyName = @"Main";

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyName bundle:nil];
RMViewController *controller = (RMViewController *)[storyboard instantiateInitialViewController];

NSURL *url = (NSURL *)[launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];
if (url != nil && [url isFileURL]) {
[controller handleOpenURL:url];
}

return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
NSString *storyName;
if (isIPAD)
storyName = @"Main_iPad";
else
storyName = @"Main";

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyName bundle:nil];
RMViewController *controller = (RMViewController *)[storyboard instantiateInitialViewController];
if (url != nil && [url isFileURL]) {
[controller handleOpenURL:url];
}
return YES;
}

这就是我的 AppDelegate 中的内容。这有助于我用新的覆盖旧的 iPhone 数据,如下所述:http://www.raywenderlich.com/1980/email-tutorial-for-ios-how-to-import-and-export-app-data-via-email-in-your-ios-app#comments

现在,当我调用函数 handleOpenURL 时,数据保存良好,但当我尝试根据新数据设置我的 IBOutlets 时,我所有的导出实际上都是零(使用断点测试)。

我很困惑,因为我得到的新数据实际上是正确的,但是当我尝试将它分配给 IBOutlet(文本字段或标签)时,它没有响应。

我认为这与进入后台有关,因为如果我终止应用程序并稍后启动它,应用程序就会加载新数据。

有什么帮助吗??

最佳答案

这个:

RMViewController *controller = (RMViewController *)[storyboard instantiateInitialViewController];

创建一个完全不与应用程序 UI 关联的全新 View Controller 。它执行的基于数据的操作可能会运行良好,但它无法更改应用程序 UI。

可能您应该做的是在现有的 UI 设置中找到现有的 RMViewController 实例,可能是通过应用 window 及其到 Root View Controller 的链接。

如果失败,尽管这可能是正确的解决方案,但至少提供 RMViewController 实例以便加载其 View 。同样,演示文稿将来自 Root View Controller 。


来自您的评论:

RMViewController *controller = (RMViewController *)self.window.rootViewController;

关于ios - 从后台返回时,IBOutlets 全部为 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21410448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com