在使用情节提要和 segue 时打开它之前选择 tabbarcontroller 的默认选项卡

Posted

技术标签:

【中文标题】在使用情节提要和 segue 时打开它之前选择 tabbarcontroller 的默认选项卡【英文标题】:select default tab of the tabbarcontroller before opening it when using storyboard and segue 【发布时间】:2014-05-14 18:34:09 【问题描述】:

在我的 ios 应用程序中,我有 tabbarviewcontroller,它不是应用程序的第一个视图控制器。

其实它是第二个视图控制器。第一个视图控制器是仪表板,然后通过按下其中一个按钮应用程序将tabbarcontroller 推到导航栏并显示tabbarcontroller(我用故事板做所有事情)

根据某些情况,tabbarviewcontroller 应该显示的默认选项卡是差异。例如,有时我应该打开 tabbarcontroller 以便显示第二个选项卡。有时我应该打开它以便显示第一个选项卡。有人知道我们该怎么做吗?我在网上搜索,但没有找到任何好的答案。

【问题讨论】:

您遇到了哪些问题?决定应该选择哪个选项卡或实际选择哪个选项卡? 打开tabbarcontroller之前不知道怎么选择tab 查看UITabBarUITabBarController 的文档。 【参考方案1】:

相信你可以设置控制器的selectedIndex。试试[myTabBarController setSelectedIndex:myInt];

如果你使用的是 segue,你应该在你的 prepare for segue 方法中设置它。这是一个例子。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender

    if([segue.identifier isEqualToString:@"myIdentifier"])  
        [((UITabBarController*)segue.destinationViewController) setSelectedIndex:myInt];
    

【讨论】:

我正在使用情节提要并且没有在代码中定义标签栏。我通过在情节提要中创建 segue 来显示 tabbarcontroller 我为使用 prepareForSegue 添加了一些代码示例。您需要将其添加到与 tabbarcontroller 连接的视图控制器中

以上是关于在使用情节提要和 segue 时打开它之前选择 tabbarcontroller 的默认选项卡的主要内容,如果未能解决你的问题,请参考以下文章

使用委托将数据从模态视图传递到父视图(在情节提要中使用 segue)

在哪种情况下应该在情节提要中使用 Popover segue?

使用情节提要逆转自定义 Segue

如何将照片(以及标签和按钮)放入滚动视图中,每次在情节提要中添加新照片时都会延长它

没有情节提要的 TableView Cell 的 iOS Swift Segue

如何摆脱或更改情节提要以编程方式创建 segue