【问题标题】:How to Reset the badgeValue after loading the screen in swift?快速加载屏幕后如何重置badgeValue?
【发布时间】:2018-12-19 14:29:08
【问题描述】:

如果用户通过访问屏幕看到通知,我想重置 tapItem 的徽章值。

使用此代码,我创建了 badgeValue。但它永远不会被重置:

func createBadgecount() {
    if let tapItems = self.tabBarController?.tabBar.items as NSArray! {
        let tapItem = tapItems[3] as! UITabBarItem
        tapItem.badgeColor = UIColor.black
        tapItem.badgeValue = "\(reports.count)"

    }
}

提前感谢您的帮助!

【问题讨论】:

    标签: swift badge


    【解决方案1】:

    如果确实出现了此UIViewController,您希望将tabBar 中的selectedItem 中的badgeValue 设置为nil

    所以添加到viewDidAppear

    override func viewDidAppear(_ animated: Bool) {
        if let tabItem = self.tabBarController?.tabBar.selectedItem {
            tabItem.badgeValue = nil
        }
    }
    

    【讨论】:

      【解决方案2】:

      你可以在

      中设置值nil
      override func viewDidAppear(_ animated: Bool) {
        if let tabItem = self.tabBarController?.tabBar.selectedItem {
          tabItem.badgeValue = nil
         }
      }
      

      【讨论】:

      • @jo1995 我很高兴回答你。如果我对你有帮助,请给我点赞并纠正我。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多