我正在尝试在UITabBarController
中添加徽章编号,它正在运行。但我开始使用NSTimer。计时器完成时。它调用webservice,作为回报,我获得了徽章编号。
但是当我在这个场地中将徽章编号设置为UITabBarController
时。它不再有用了。
答案 0 :(得分:0)
[[super.tabBarController.viewControllers objectAtIndex:2] tabBarItem].badgeValue = @"1";
答案 1 :(得分:0)
在没有看到你的代码的情况下很难分辨,但有两种可能性让人想起:
您正在尝试从不是主线程的线程设置徽章值。尝试将dispatch_async
中的徽章价值设置代码包装到主队列中:
dispatch_async(dispatch_get_main_queue(), ^
{
// set badge number
});
您设置badgeValue的项目为nil。尝试在添加徽章编号的行中添加断点或一些NSLog语句,并检查某些对象的值是否为零。