gpt4 book ai didi

ios - 设置 UITabBarItem 角标(Badge)

转载 作者:行者123 更新时间:2023-11-30 14:19:09 29 4
gpt4 key购买 nike

我正在使用 SwiftParse.com 开发适用于 iOS 8 的应用。

我有一个带有 2 个选项卡的应用程序。第二个选项卡查询我的 Parse 数据库中的一个表,我想根据该 Parse 查询中的对象数量更新第二个选项卡的角标(Badge)值。

我了解 PFQueries 的工作原理以及如何检索对象的数量等,但我不确定在哪里(即以什么方法/函数)放置此查询并更新选项卡项的角标(Badge)?

打算使用此代码或类似代码来更新角标(Badge)值:

var tabArray = self.tabBarController?.tabBar.items as NSArray!
var tabItem = tabArray.objectAtIndex(1) as UITabBarItem
tabItem.badgeValue = "34" // will use the value of my countObjects Parse query

那么我应该在哪里插入此代码来更新角标(Badge)呢?当应用程序首次加载时,然后进入/离开第二个选项卡的 View 时,它需要更新该值。

也许,在通过 tabBar 访问 View 之前,应用程序首次启动时,选项卡 View 是否有一个函数会运行?

最佳答案

你应该关心 View 的生命周期和这三个方法:viewDidLoadviewWillAppearviewWillDisappear:

func updateBadgeValue() {
var tabArray = self.tabBarController?.tabBar.items as NSArray!
var tabItem = tabArray.objectAtIndex(1) as UITabBarItem
tabItem.badgeValue = "34" // will use the value of my countObjects Parse query
}

// first loads
override func viewDidLoad() {
super.viewDidLoad()

updateBadgeValue()
}

// the view is about to made visible
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)

updateBadgeValue()
}

// the view is about to be removed
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)

updateBadgeValue()
}

关于ios - 设置 UITabBarItem 角标(Badge),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30700294/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com