gpt4 book ai didi

xcode - iOS 标签栏 Controller 中的动态数据

转载 作者:行者123 更新时间:2023-11-29 05:06:00 25 4
gpt4 key购买 nike

我在应用程序中使用标签栏 Controller ,但当应用程序首次启动时,我在 Controller 顶部加载登录屏幕:

initialScreenViewController = [[Login alloc] init];
[window addSubview:tabBarController.view];
[window addSubview:initialScreenViewController.view];
[window makeKeyAndVisible];
return YES;

当用户成功通过身份验证时,我删除登录 View :

[self.view removeFromSuperview];

除了一个小异常(exception)之外,这一切都运行得很好。我的选项卡栏 Controller 的第一个选项卡上有一些标签,这些标签根据用户登录的内容进行填充。但是,由于该 View 实际上在用户进行身份验证之前加载到登录屏幕后面,因此在身份验证后它不会正确显示。

我的问题是......有没有办法让标签栏页面在登录后如何“刷新”?或者甚至可能在登录后才加载标签栏 Controller ?

谢谢!!杰森

最佳答案

您可以通过多种方式解决这个问题,但我认为最简单的理解和实现是使用通知。让您的登录 View Controller 在用户成功登录时发布通知,并让任何其他关心用户身份验证的 View Controller 监听该通知。

您希望登录 Controller 和其他任何东西之间有相当松散的耦合 - 可能根据用户状态更改其内容的 View Controller 不必特别了解有关登录 Controller 的任何信息,并且登录 Controller 应该不必了解可能受用户状态变化影响的所有其他 Controller 。通知提供了松散耦合,并且易于使用。

关于xcode - iOS 标签栏 Controller 中的动态数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5249939/

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