ios - 将 View Controller 推送到选项卡 Controller 中的 View 控件

标签 ios cocoa-touch

所以我有一个标签栏 Controller ,它包含一个搜索 View 和一个配置文件 View 。当我单击搜索 View 中的一个单元格时,我想转到另一个 View Controller ,底部仍然有我的 tab 并保持用户单击后退按钮返回主视图的能力。

我已经实现了后退按钮部分,但是我还没有实现维护标签部分。

这是我试过的-

-(void)displayCardController{

if(self.userProfile == nil){
    [self.tabBarController setViewControllers:@[self.searchViewController, self.loginViewController]];
    [self.searchViewController.navigationController pushViewController:self.searchViewController.detailController animated:YES];
} else {
        [self.tabBarController setViewControllers:@[self.searchViewController, self.profileViewController]];
        [self.searchViewController.navigationController pushViewController:self.searchViewController.detailController animated:YES];
    }

}

想法是 - 将选项卡设置为拥有我的 Controller ,然后将我想要的内容推到最上面。那是行不通的。

我如何实现这一点?

最佳答案

问题似乎出在您的第一个选项卡 Controller 子项 self.searchViewController 上, 导航 Controller 。如果您希望能够在仍留在选项卡 Controller 内的同时推送到此 Controller ,则需要搜索 View Controller (或第一个选项卡 Controller 子项)成为导航 Controller 。

请注意,它的导航栏可以隐藏,因此它看起来不像导航 Controller ,但是当您按下时,您可以显示导航栏,从而为用户提供清晰的方式回来吧。

或者,使用不同的界面。例如,当我有两个选项卡并且其中一个需要临时更改时,我在 iPhone 上使用 presented View Controller :而不是 push/pop,我使用 present/解雇。在 iPhone 上,这会隐藏标签栏,但完成后我们会返回到同一个地方,这样界面就清晰了。 (在 iPad 上,标签栏 Controller 内呈现的 View 不必隐藏标签栏。)

关于ios - 将 View Controller 推送到选项卡 Controller 中的 View 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20938118/

相关文章:

ios - 子类化 UIKit 类的最佳实践

ios - 带 Metal 的索引图

objective-c - iOS7 - 带有 contentInset 的 UIWebView 不显示菜单

ios - UIDatePicker的默认日期不是今天的默认日期

iphone - 如何在表格单元格中使用 UIWebView?

objective-c - 在 UITableView 中创建 "folders",推送下一个带有内容的 UITableView(无限!)

ios - 单击后退按钮调用什么 Segue?

ios - swift:键盘观察器不起作用

iphone - 应用程序加载时 iOS 内存泄漏

iphone - iPhone 核心数据新功能