gpt4 book ai didi

ios - 从应用程序委托(delegate)设置标签栏角标(Badge)

转载 作者:行者123 更新时间:2023-11-28 19:52:12 27 4
gpt4 key购买 nike

我的 AppDelegate 中有一个观察者,当客户端收到新消息时,我想用它在标签栏按钮上显示角标(Badge)编号。我可以使用 [[self navigationController] tabBarItem].badgeValue = @"1"; 这行从 SampleViewController.mviewDidLoad 编辑角标(Badge)code>,但不知道如何从 AppDelegate 设置它。我尝试添加 UITabBarDelegate,导入 SampleViewController.h 并调用 [[SampleViewController navigationController] tabBarItem].badgeValue = @"1"; 但是没用。我还尝试在 SampleViewController 中实现一个类方法,该方法更改角标(Badge)编号并从观察者调用,但无法放置 [self navigationController] tabBarItem].badgeValue = @"1"; 到类方法中。有人可以帮助我实现这一目标吗?我知道我可以在每个 VC 中放置一个观察者,但是从 AppDelegate 做这个会更优雅。

AppDelegate.m

- (void)pubnubClient:(PubNub *)client didReceiveMessage:(PNMessage *)message {

// DISPLAY A NUMBER IN THE TAB BAR BADGE WHEN THE CLIENT RECEIVES A MESSAGE

}

最佳答案

您可以使用 self.window.rootViewController 来访问您的 View 层次结构的 Root View Controller 。到那时,只需遍历该层次结构以获取对所需 View Controller 的引用。

关于ios - 从应用程序委托(delegate)设置标签栏角标(Badge),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28617335/

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