UITabBarController 选中项

Posted

技术标签:

【中文标题】UITabBarController 选中项【英文标题】:UITabBarController selected item 【发布时间】:2013-09-26 13:46:52 【问题描述】:

我有UITabBarController 并推送两个视图。我希望第一个视图成为默认视图,并且按钮在加载时处于“选定”状态。

我的问题是 tabBarItem 在加载时没有选定的背景。我必须点击它才能显示所选内容。我还为标签栏项目使用自定义图像,并在添加到 tabBarController 的每个视图中配置它们。

我用这个来设置选中项:

_tabBarController.selectedViewController = [_tabBarController.viewControllers objectAtIndex:0];

UITabBarItem 在我添加到 tabBarController 的每个视图中创建:

-(UITabBarItem *)tabBarItem

    return [[UITabBarItem alloc] initWithTitle:@"" image:[UIImage imageNamed:@"tab_select_indicator_map.png"]  tag:0];

如何让 tabBarItem 也显示选中状态?

【问题讨论】:

您找到解决问题的方法了吗?我正在推动一个 tabbarcontroller 并且未选择初始选项卡图标(尽管 viewcontroller 显示正确)。只有点击实际的选项卡图标才能选择它。我正在以编程方式设置selectedIndex 【参考方案1】:

当你的 tabBar 被加载时,使用下面的代码来显示选中的 tabBarItem。

[_tabBarController setSelectedIndex:0]; // your can set index as per your requirement.

已编辑:

确保您创建了类似的 tabBarItem

UITabBarItem* myTestingItem = [[UITabBarItem alloc] init];
[myTestingItem  setFinishedSelectedImage: [UIImage imageNamed: @"btnTabItem-SelectedImage.png"]
              withFinishedUnselectedImage: [UIImage imageNamed: @"btnTabItem.png"]];

【讨论】:

但它并没有给 tabBarItem 提供“选择”状态。我仍然需要点击才能显示该状态。 我更新了问题以显示我如何创建 tabBarItem。现在我没有设置 unselectedImage,但是当我点击时我得到了一个。 我没有这张图片“btnTabItem-SelectedImage.png”,当我点击它时,ios 会自动在项目周围放置“选定”背景。

以上是关于UITabBarController 选中项的主要内容,如果未能解决你的问题,请参考以下文章

关于UITabBarController的设置(iOS 开发)

UITabBarController

使选定的 UITabBarController 项目图标更大

在 UITabBarController 中的两个子视图控制器之间转换

UITabBarController 应用程序和 pushViewController 失败

UITabBarController 委托方法永远不会被调用