我有一个 iOS 应用程序,它有一个页面视图,可以将多个项目显示为页面。每个页面都包含一个带有 2 个选项卡的选项卡栏控制器,因此我可以以两种方式显示每个页面的信息 - 作为表格或作为图表。这是一个屏幕截图:
因此,用户通过更改页面来选择要查看的项目(在本例中为香蕉)。但是我不知道应该在哪里或如何将他们正在查看的项目注入选项卡控制器中的 2 个视图控制器中。如果有帮助,这是我的故事板的照片。我想在创建表视图控制器或图形控制器时注入它,但我看不到该代码发生在哪里 - 我错过了什么吗?
谢谢。
我有一个 iOS 应用程序,它有一个页面视图,可以将多个项目显示为页面。每个页面都包含一个带有 2 个选项卡的选项卡栏控制器,因此我可以以两种方式显示每个页面的信息 - 作为表格或作为图表。这是一个屏幕截图:
因此,用户通过更改页面来选择要查看的项目(在本例中为香蕉)。但是我不知道应该在哪里或如何将他们正在查看的项目注入选项卡控制器中的 2 个视图控制器中。如果有帮助,这是我的故事板的照片。我想在创建表视图控制器或图形控制器时注入它,但我看不到该代码发生在哪里 - 我错过了什么吗?
谢谢。
如果我的理解是正确的,你应该继承你的标签栏控制器并实现
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
方法。
在那里,您可以通过 segue 对象的 destinationViewController 属性访问目标视图控制器。
根据 segue 标识符,您可以自定义目标视图控制器:
if ([segue.identifier isEqualToString:@"SegueID"]) {
MyViewController *myViewController = (MyViewController *)segue.destinationViewController;
//customize view controller
}
不确定这在storybaord环境中是否同样有效,但UITabBarControllerDelegate有一个名为didSelectViewController的回调方法。它将为您提供正在选择的视图控制器。 来自 Apple 的文档。