gpt4 book ai didi

objective-c - 用户第一次打开应用程序时处理显示登录屏幕的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-29 04:26:23 25 4
gpt4 key购买 nike

我目前正在构建一个 iOS 应用程序,并试图找出呈现必要屏幕的最佳方式。

该应用程序是基于选项卡的应用程序,但选项卡栏及其子项在用户登录后才可见。

目前,当调用 application:didFinishLaunchingWithOptions 时,应用程序委托(delegate)将 tabbarcontroller 设置为 Root View Controller ,然后选项卡栏 Controller 中的第一个 Controller 将在需要时显示登录 View Controller 。

我使用这种方法的问题是选项卡栏中的第一个 View Controller 非常繁忙。它向外部 API 发出一些请求,其中一些请求首先需要有效的 session token 。

除非有人能提出更好的解决方案,否则我想做的是检查 application:didFinishLaunchingWithOptions 是否存在有效的 session ID。如果有,则将tabBarController设置为rootViewController,如果没有,则将登录 Controller 设置为 Root View Controller 。

有人能看出这个想法有什么陷阱吗?

最佳答案

使用 NSUserDefault 来存储 bool 值,该值第一次为 true,登录屏幕将出现,同时将 bool 值设置为 false。所以第二次登录scrren就不会出现

在 application:didFinishLaunchingWithOptions 方法中添加此内容:

 [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"FirstTime"];
[[NSUserDefaults standardUserDefaults] synchronize];

现在

 if([[NSUserDefaults standardUserDefaults] boolForKey:@"FirstTime"] == YES)
{
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"FirstTime"];
[[NSUserDefaults standardUserDefaults] synchronize];
//login screen
}

关于objective-c - 用户第一次打开应用程序时处理显示登录屏幕的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12280999/

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