iPhone SDK:如何确定 TabBarController 中的最后一个活动选项卡?

发布于 2024-07-16 16:16:21 字数 286 浏览 2 评论 0原文

我的 iPhone 应用程序中的选项卡栏控制器选项卡之一会根据用户来自的位置(其他选项卡)更改其显示内容。 例如,如果选项卡是 A、B、C 和 D,如果用户之前在选项卡 A 上,则 C 选项卡将显示图片,但如果用户之前在选项卡 B 上,则 C 选项卡将显示文本。

我不知道如何实现这不需要子类化 TabBarController (Apple 文档不鼓励这样做)。 TabBarController 有一个当前活动控制器的属性,以及选项卡栏中所有控制器的列表,但可以这么说,无法看到“选项卡栏控制器遍历树/堆栈”。 有什么想法吗?

One of the tab bar controller tabs in my iPhone app changes what it displays based on where the user arrived from (which other tabs). For example, if the tabs are A, B, C and D, the C tab will display a picture if the user was previously on tab A, but text if the user was previously on tab B.

I'm not sure how to implement this without subclassing the TabBarController (which Apple documentation discourages). TabBarController has a property for currently active controller, and a list of all controllers in the tab bar, but no way to see the 'tab bar controller traversion tree/stack', so to speak. Any thoughts?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

〃安静 2024-07-23 16:16:21

您可以设置委托并通过以下方式跟踪最后选定的视图控制器,而不是子类 UITabBarController

- (void)tabBarController:(UITabBarController *)tabBarController
    didSelectViewController:(UIViewController *)viewController;

Instead of subclass UITabBarController you can set a delegate and keep track of the last selected view controller via

- (void)tabBarController:(UITabBarController *)tabBarController
    didSelectViewController:(UIViewController *)viewController;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文