0

我有一个这样的选项卡式应用程序:

截屏

并且已经设置了它应该看起来的所有东西,但它还不能运行。我已经用谷歌搜索了我的问题,他们说你首先需要设置一个 NavigationController,其表视图为 rootView,然后是 NavigationBar,但我真的想不通。希望你们中的某个人可以帮助我。

4

3 回答 3

0

如果不使用故事板,假设这将在代码中完成,您需要按照层次结构的相反顺序创建事物 - 如下所示:

  • 使用 initWithNibName 创建 Einstellungen 选项卡的 TableViewController 实例:
  • 使用 initWithRootViewController: 创建一个 UINavigationController: 并将 Einstellungen 设置为根
  • 创建一个 UITabBarController 并将您的导航控制器设置为此选项卡栏控制器的视图控制器之一
  • 将标签栏控制器作为子视图添加到应用程序委托中的主窗口

这将创建此层次结构:

标签栏控制器 -> 视图控制器:导航控制器 -> 根视图控制器:Einstellungen

于 2012-06-19T21:57:15.603 回答
0

如果您使用 Storyboard,请选择您的视图控制器,转到“编辑”菜单并选择“嵌入导航控制器”。

于 2012-06-19T17:20:43.797 回答
0

根据您对我对您问题的评论的回复,您应该这样做:

首先,为了使它看起来像设置应用程序表,您需要将您的样式更改UITableViewUITableViewStyleGrouped.

您的层次结构将包括以下内容:

实际添加到您的UITabBarControllerviewControllers 数组中的视图控制器(因为我看到您有一个标签栏作为您的最低导航级别)应该是UINavigationController. 导航控制器的根视图控制器应该是您创建的包含表视图的 uiviewcontroller 子类。(假设它被称为SettingsViewController

SettingsViewController *settingsViewController = [[SettingsViewController alloc] init];

UINavigationController *settingsNavController = [[UINavigationController alloc] initWithRootViewController:settingsViewController];

您可能需要为您想要的每种类型的详细信息窗格创建一个不同的 UIViewController 子类(如果它们具有不同的功能)。

在该didSelectRowAtIndexPath UITableViewDelegate函数中,您将创建适当的细节视图控制器并将其推送到您的导航堆栈中。

假设您有一个音量设置视图控制器作为示例。以下是我刚才提到的函数中的代码。请记住,您还需要实际检查所选行的索引和/或部分,以确定应该显示哪个详细视图。

VolumeSettingsViewController *volumeSettings = [[VolumeSettingsViewController alloc] init];

[self.navigationController pushViewController:volumeSettings animated:YES];

默认情况下,它的功能与 Apple 设置应用导航非常相似。导航栏将自动有一个“返回”按钮,带您返回设置视图。

于 2012-06-19T20:44:10.763 回答