[英]How to remove badge from specific tab bar after clicking away from it?
我只想在用户点击带有徽章的标签栏后,才能从标签栏中删除徽章
例如,徽章显示在“新闻”标签上,如下所示。
如果我点击“新闻”标签,徽章仍会显示。 只有在点击任何其他标签(新闻除外)后,徽章才会消失。
如何在app委托中实现此功能?
编辑
我尝试通过以下代码设置UITabbardelegate:
tabController.tabBar.delegate = self;
但我不断收到以下错误
不允许更改由标签栏控制器管理的标签栏的代理。
我该如何解决这个问题?
在您的情况下, 1徽章位于index 3
选项卡上,因此您可以:
[[tabBar.items objectAtIndex:3] setBadgeValue:nil];
您需要弄清楚用户何时点击带有徽章的标签,您可以先为tag
栏项目分配tag
,然后使用以下内容获得反馈:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
switch (item.tag)
{
case 3: /* News */
/* Tabbar item #3 was pressed, do something here. */
break;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.