gpt4 book ai didi

ios - UITabBarController.selectedIndex 返回错误值

转载 作者:行者123 更新时间:2023-11-29 13:15:52 25 4
gpt4 key购买 nike

我有一个带有两个选项卡的 UITabBarController。每个选项卡本身都有相同的 UISplitViewController。我想查看 tabbarcontroller 的选定索引的值,以查看当前在 UITableViewDelegate 方法中的 MasterViewController 中打开了哪个 splitview,但它返回了错误的值。即使选择了索引 1,它也始终返回 0。

在 appdelegate 中,我通过循环中的相同代码以这种方式初始化了它们:

             MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController_iPad" bundle:nil];

UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];

detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController_iPad" bundle:nil];
UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController:detailViewController];

masterViewController.detailViewController = detailViewController;

self.splitViewController = [[UISplitViewController alloc] init];
splitViewController.tabBarItem = controller.tabBarItem;
self.splitViewController.delegate = detailViewController;
self.splitViewController.viewControllers = @[masterNavigationController, detailNavigationController];
[controllers replaceObjectAtIndex:index withObject:splitViewController];

任何帮助将不胜感激!我认为这可能是 splitViewController 的一些问题,因为它在 iPhone 上运行良好。

最佳答案

我的猜测是,这是因为您的 ViewController 期望 TabBarController 成为它的 parentViewController。您可以尝试检查 self.splitViewController.tabBarController.selectedIndex

但是,我建议您使用 SplitViewController 作为您应用的根目录,并将 TabBarController 放在您的 master 中。你可以通过这种方式达到同样的效果,而且会更正确。希望这对您有所帮助!

编辑:

根据View Controller Catalog “ Split View Controller 必须始终是您创建的任何界面的根。换句话说,您必须始终将 UISplitViewController 对象的 View 安装为应用程序窗口的 Root View 。然后, Split View界面的 Pane 可能包含导航 Controller 、选项卡栏 Controller 或实现界面所需的任何其他类型的 View Controller 。 Split View Controller 不能以模态方式呈现。”

所以不要把它放在标签栏 Controller 中。

关于ios - UITabBarController.selectedIndex 返回错误值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15848973/

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