从模态视图关闭的标签栏项目中删除选择图像

Posted

技术标签:

【中文标题】从模态视图关闭的标签栏项目中删除选择图像【英文标题】:Remove selection image from tabbar item on modal view dismiss 【发布时间】:2013-02-07 03:06:32 【问题描述】:

我有一个基于标签栏的应用程序。

我已为每个标签栏项目选择/取消选择图像集。

在第一个选项卡上,我有一个打开 modalviewcontroller 的按钮。

在模态视图被激活的时候,我的标签栏项状态被选中,并且有选择图片。

当模态视图弹出时,选择图像仍然存在。但是当我关闭模态视图时,我希望标签栏项目的选择图像更改为其他图像。

如何在模态视图关闭时更改此图像?

我正在尝试这样做,但它不起作用:

[[[self.tabBarController.tabBar items] objectAtIndex:0 ] setSelectionIndicatorImage:[UIImage imageNamed: @"abc.png"] ];

请帮忙。

提前致谢。

【问题讨论】:

【参考方案1】:

标签栏项目的标题和图像应该由该标签中的控制器设置,而不是标签栏控制器。因此,您应该尝试在第一个选项卡中更改控制器中的该选项卡。您使用的方法是用于独立标签栏,而不是由标签栏控制器控制的方法。你可以这样做:

-(void)changeTitle
    [self.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"one.jpg"] withFinishedUnselectedImage:[UIImage imageNamed:@"two.jpg"]];

【讨论】:

我试过 self.tabBarItem.image = [UIImage imageNamed:@"abc.png"];但没用【参考方案2】:

使用它可能会对您有所帮助:

UITabBarItem *tabBarItem1 = [[self.tabBar.tabBar items] objectAtIndex:0];
[tabBarItem1 setFinishedSelectedImage:[UIImage imageNamed:@"ab.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"abc.png"]];

【讨论】:

但在我的情况下,选项卡没有改变,只有模式视图出现并被关闭。这不适用于模态视图关闭。

以上是关于从模态视图关闭的标签栏项目中删除选择图像的主要内容,如果未能解决你的问题,请参考以下文章

从标签栏控制器模态显示视图

从 uitabbarController 视图中关闭模态视图

模态视图控制器隐藏标签栏

iPhone:在模态视图标签栏中创建滚动图像/文本视图

从模态视图切换到标签栏视图控制器并且不会丢失标签栏

关闭模式视图后标签栏文本太大