gpt4 book ai didi

iphone - 以编程方式选择后,UITableView 中的 UITabBar MoreViewController 图像消失

转载 作者:可可西里 更新时间:2023-11-01 03:34:39 25 4
gpt4 key购买 nike

我正在尝试在 UITabBar.viewControllers 数组中选择我的 UINavigationControllers 之一。

我之前尝试过设置 UITabbarController.selectedIndex,但 Apple 文档说:“要选择更多导航 Controller 本身,您必须改为更改 selectedViewController 属性的值。”

AppDelegate *appDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
UINavigationController *navController = [appDelegate.objTabBarController.viewControllers objectAtIndex:5];
[appDelegate.objTabBarController setSelectedViewController:navController];

这样做很好,但是当我变回MoreViewController的 ListView 时,左侧的图标消失了,不会再出现。

一切正常,用手指选择它。

Selecting is fine

以编程方式选择时出现错误 -> 图片消失了

Per Code Step 1 Per Code Step 2 Per Code Step 3

对我做错了什么有什么建议吗?

最好的问候,史蒂夫

最佳答案

选择更多的导航 Controller

要选择 moreNavigationController,您必须设置 selectedViewController:

self.tabBarController.selectedViewController = self.tabBarController.moreNavigationController;

原因很简单:moreNavigationController 不在tab bar controller 的viewControllers 中,所以无法通过index 选中。

要直接选择“更多” Controller 之一,您可以设置 selectedViewController 属性:

self.tabBarController.selectedViewController = viewController5;

或者你可以设置selectedIndex:

self.tabBarController.selectedIndex = 5;

修复消失的标签栏图像

消失的标签栏图像是由于在导航 Controller (由标签栏 Controller 生成的 moreNavigationController)内部使用导航 Controller (用于设置)引起的。要修复它,有两种解决方案:

  1. 不要为more部分添加导航 Controller ,而是直接添加 Controller 。 Controller 结构如下所示,假设所有选项卡中的 Controller 都需要导航:

    tabBarController
    + navigationController
    + viewController0
    + navigationController
    + viewController1
    + navigationController
    + viewController2
    + navigationController
    + viewController3
    + viewController4
    + viewController5
  2. 在其导航 Controller 上设置设置 Controller 的tabBarItem(您只需执行一次):

    UINavigationController *settingsNavigationController = [appDelegate.objTabBarController objectAtIndex:5];
    UIViewController *settingsRootController = settingsNavigationController.viewControllers[0];
    settingsNavigationController.tabBarItem = settingsRootController.tabBarItem;

关于iphone - 以编程方式选择后,UITableView 中的 UITabBar MoreViewController 图像消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12767975/

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