gpt4 book ai didi

objective-c - 模态视图中的 Passcode ViewController 演示

转载 作者:行者123 更新时间:2023-11-28 17:41:44 24 4
gpt4 key购买 nike

我正在我的 iPhone 应用程序中实现密码功能,该应用程序将 UITabBarController 作为 Root View Controller 。在大多数情况下,通过在应用程序进入后台时从 tabBarController 显示模态 Passcode ViewController,我的一切都运行良好,如下所示:

- (void)applicationDidEnterBackground:(UIApplication *)application
{
if ([[NSUserDefaults standardUserDefaults] valueForKey:kPasscodeStringKey]) {

PasscodeEntryVC *passcodeView = [[PasscodeEntryVC alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:passcodeView];
[tabBarController presentModalViewController:nav animated:NO];
}
}

当应用程序进入后台时已经显示模态视图 Controller 时,我的问题就来了。然后,没有密码 View 出现。这样做的正确方法是什么?我不是应该先将消息发送到 tabBarController 来显示 View ,而是应该先检查当前 View 是什么,然后再显示密码吗?如果是这样,这是怎么做到的?谢谢。

最佳答案

首先 - 您正在泄漏内存,因为您没有释放您的passcodeView 和导航 Controller nav

其次 - 您可以保留一个简单的 BOOL 变量,只要显示或关闭模态视图,该变量就会更新。如果有模态视图,只需在 applicationDidEnterBackground: 方法中调用 dismissModalViewController:animated:

您还可以使用 [self.navigationController.topViewController class] 检查最前面的 View Controller ,但我发现这是不可靠的。

关于objective-c - 模态视图中的 Passcode ViewController 演示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7880342/

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