【问题标题】:Adding badge number in UItabbarView Controller in runtme在运行时在 tabbarView 控制器中添加徽章编号
【发布时间】:2013-04-16 09:09:02
【问题描述】:

我正在尝试在 UITabBarController 中添加 徽章编号,它正在工作。但我开始了 NSTimer 。当计时器完成时。它调用网络服务,作为回报,我得到徽章编号。

但是当我在这个场景中将徽章编号设置为 UITabBarController 时。它不再工作了。

【问题讨论】:

  • 你能在定时器和连接管理中包含一些代码吗?
  • 试试这个 UITabBarItem *tbi = (UITabBarItem *)self.tabController.selectedViewController.tabBarItem; tbi.badgeValue = @"2";

标签: objective-c uitabbarcontroller badge


【解决方案1】:
[[super.tabBarController.viewControllers objectAtIndex:2] tabBarItem].badgeValue = @"1";

【讨论】:

    【解决方案2】:

    如果没有看到您的代码,很难判断,但脑海中浮现出两种可能性:

    1. 您正在尝试从不是主线程的线程中设置徽章值。尝试将您的徽章值设置代码以dispatch_async 包装到主队列:

      dispatch_async(dispatch_get_main_queue(), ^
      {
          // set badge number    
      });
      
    2. 您设置 badgeValue 的项目为 nil。尝试在添加徽章编号的行中添加断点或一些 NSLog 语句,并检查某些对象的值是否为 nil。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-09
      • 1970-01-01
      • 2013-07-04
      • 1970-01-01
      • 2012-02-02
      • 1970-01-01
      • 1970-01-01
      • 2018-06-23
      相关资源
      最近更新 更多