从 iPhone 上的 tableViewController 中确定当前选定的 TabBarItem?

发布于 2024-09-11 12:25:21 字数 404 浏览 4 评论 0原文

我的 TabBar 中有 2 个选项卡。它们都拥有相同 UITableViewController 的实例。

层次结构为

UITabbarController > UINavigationController > UITableViewController

从 tableViewController 中我想确定当前选择了哪个选项卡。我知道我可以使用 UITabBarControllerselectedIndex 属性,我只是不知道从当前 viewController 中引用 if 的最简单方法。我是否要遍历每个视图的超级视图来找到 TabBarController

I have 2 tabs in my TabBar. They both hold instances of the same UITableViewController.

The hierarchy goes

UITabbarController > UINavigationController > UITableViewController

From within the tableViewController I'd like to determine which tab is currently selected. I know I can use the selectedIndex property of the UITabBarController I just don't know the easiest way to refer to if from within the current viewController. Do I walk up through the superviews of each view to find the TabBarController?

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

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

发布评论

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

评论(1

多彩岁月 2024-09-18 12:25:21

如果您在应用程序委托中实例化并存储UITabBarController,则可以将其公开为该对象的属性。您可以存储指向 App Delegate 对象的静态全局指针,并通过类方法公开它:

+ (MyAppDelegate*) instance
{
    return g_Instance;
}

当您需要 tabBarController 时,您可以使用:

[MyAppDelegate instance].tabBarController

If you instantiate and store the UITabBarController in your App Delegate, you can expose it as a property of that object. You can store a static global pointer to your App Delegate object and expose it through a class method:

+ (MyAppDelegate*) instance
{
    return g_Instance;
}

When you need your tabBarController you can use:

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