ios - 无法从 ImageView 访问 TabBarController

标签 ios

我有一个应用程序在标签栏 Controller 中有一个导航 Controller 。导航 Controller 的根是一个 TableView Controller 。表格 View 与 ImageView 有一个连接。我想从 ImageView Controller 更新选项卡上的角标(Badge)值。从标签栏 Controller ,这工作正常:

UIViewController *viewController = [self.tabBarController.viewControllers objectAtIndex:1];
viewController.tabBarItem.badgeValue = @"x";

但是当我将相同的代码放入 imageview Controller 时,它不起作用。当我在执行后检查 'viewController' 的值时,该值为 nil。 self.tabBarController 也一样。由于某种原因, ImageView Controller 看不到它的 tabbarcontroller。

最佳答案

您应该能够使用 self.navigationController.tabBarController 访问 tabBarController。所以你的代码需要是:

UIViewController *viewController = [self.navigationController.tabBarController.viewControllers objectAtIndex:1];
viewController.tabBarItem.badgeValue = @"x";

关于ios - 无法从 ImageView 访问 TabBarController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13546906/

相关文章:

iphone - 如何在 iOS 中创建不在 Unicode 中的下标字符

ios - 设置 maximumDate 时 Datepicker 返回错误的日期

ios - 如何在 native View 中显示更多元素?

ios - 使用 NSLayoutConstraints 将 View 放置在其 super View 的边界之外

ios - 在不使用太多内存的情况下使用 PNG 帧在 UIImageView 中创建动画的最佳方法是什么

ios - NSObject 在加载 viewDidLoad() 之前似乎没有初始化

ios - cocos3d:如何将阴影附加到 pod 对象

ios - 在iOS7中可能对应用程序进行评分和审查?

ios - 如何一次更改核心数据中所有实体的属性值?

ios - Storyboard继续导致内存泄漏