gpt4 book ai didi

ios - 如何在 Xcode 上管理登录和注销过程

转载 作者:行者123 更新时间:2023-11-29 04:06:27 24 4
gpt4 key购买 nike

我已经为此苦苦挣扎了很长时间,所以我最终放弃了寻找答案并决定立即提问。

在我的应用程序上,我有一个用户登录页面。该应用程序有一个 TabBarViewController,其项目中有一些 NavigationController。

我最后的努力是将登录屏幕嵌入到 NavigationBarController 中,并使其成为初始 View Controller ,如下图所示。

enter image description here

当应用程序启动时,如果用户登录 LogInViewController 'segues' 到 TabBarController,一切都很好。当用户在 ProfileViewController 中注销时,此 ViewController 中将有一个“segueing”到初始 View Controller 。

另一方面,如果没有用户登录,LogInViewController 会呈现一个 View ,以便用户可以插入用户名和密码。如果凭据正确,LogInViewController 将“segues”到 TabBarController。问题是,此时,即使应用程序仍然运行良好,我也会收到以下警告:

Warning: Attempt to present TabBarViewController: 0xa19a670 on UINavigationController: 0xa526370 while a presentation is in progress!

所以我认为这不是处理所有登录/注销过程的最佳方法。

我的问题是,我应该将 LogInScreen 放在层次结构中的哪个位置?如果万一我的布局/层次结构是正确的,如何使警告消失?

最佳答案

您应该将主屏幕设置为您的rootViewController,并且一旦您的应用程序启动或变为事件状态,您可以检查用户是否登录,如果没有,则以模态方式显示登录屏幕,它将避免与其他 NavigationControllerTabBarController

发生困惑

另一种方法是将所有 ViewControllers 放入 MutbaleArray 中,并根据要显示的 View 设置 TabBarController 的当前索引?如果您不想在用户登录后显示登录屏幕,只需将其从 MutableArray 中删除,请检查我的答案 here ,这可能对你的事业有帮助

关于ios - 如何在 Xcode 上管理登录和注销过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15115155/

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