ios - 导航 Controller 让我进入 IOS 中的标签栏 Controller

标签 ios uinavigationcontroller uitabbarcontroller

嗯,我已经阅读了那些帖子和教程,但它们让我更加困惑:

url 1 quest 1 quest 2

我想做的是:

一开始我的应用程序有一个表格 View 。当我按一行时,它应该带我到另一个有标签的 View 。

到目前为止我所做的是这些:

1) 创建了一个导航 Controller ,还有我的表格 View 。当我按下一行时,将打开一个 View 。在那个 View 中(有它自己的 .xib 文件)我添加了标签栏项目。

你可以在这里看到图片:

navigation controller single view

但是现在,我不知道如何在按下标签栏项目时打开一个新 View 。我正在尝试将我的 View 嵌入到 Controller 中,但我做不到。

2) 然后我尝试了这个: 像以前一样使用我的导航 Controller ,并在 Storyboard 中添加了一个标签栏 Controller ,如该图片所示: enter image description here

但我无法连接它们。我的第一个 View 是“SkiCenter”类,我使用的代码是:

SkiCenter *myDetViewCont = [[SkiCenter alloc] initWithNibName:@"SkiCenter" bundle:[NSBundle mainBundle]];
    myDetViewCont.ski_center=[centers objectAtIndex:indexPath.row];
    [self.navigationController pushViewController:myDetViewCont animated:YES]; // "Pushing the controller on the screen"
    [myDetViewCont release]; // releasing controller from the memory
    myDetViewCont = nil;

我收到 SIGBRT,它说明了关于“SkiCenter”的 .nib 文件。

您能否建议 1 或 2 中的解决方案?

只是为了更清楚: 解决方案 1: 按行让我进入一个名为 skicentermain 的 uiview。我添加了几个 tabbaritems,但我不知道如何让它们打开新 View 。

解决方案 2: 插入了一个标签栏 Controller 。它的第一个选项卡是 SkiCenter。但是当按下该行时,我得到一个 sigbart 错误。它说了一些关于 SkiCenter 的 nib 文件。

最佳答案

如果您决定使用 Storyboard,您可以简单地从 attributes inspector 中为任何 View Controller 添加一个标识符,然后使用它的 id 实例化它。

UIStoryboard * storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

[[self navigationController] pushViewController:[storyBoard instantiateViewControllerWithIdentifier:@"ViewControllerID"] animated:YES];

关于ios - 导航 Controller 让我进入 IOS 中的标签栏 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12301478/

相关文章:

ios - 测量在 iPhone 屏幕上绘制的线的距离

ios - 自定义导航栏

ios - 我可以在 ElCapitan 上安装 Xcode 8.3 吗

ios - 如何从 xcode 6.4 提交代码到 SVN?

ios - 如何从外部 View Controller 转到标签栏项目

ios - 使用界面生成器将 View 添加到 UINavigationController

iphone - 更改 UITabBarController 的 View Controller

iphone - 如何使用 UITableViewController 创建布局(附加为图像)

iOS TabBarController 仅显示黑屏

ios - 图片不在项目文件夹中