我正在开发一个应用程序,我想使用iPod / Music应用程序用来导航播放列表的相同混合导航和标签栏。
基本上:
导航嵌入在标签中,导航中嵌入的标签?似乎它不会完全符合我的要求。另一方面,如果我坚持使用基本的导航应用程序并只添加标签,那么我是不是会有更多的额外代码?
最好的基本方法是什么?
答案 0 :(得分:2)
我已经构建了这样做的应用程序。考虑它的最佳方式是从最狭窄的部分开始,即各个视图控制器。在iPod示例中,这将包括艺术家,专辑,播放列表,歌曲等的控制器。请注意,如果您点击播放列表,它会将您带到歌曲列表。这是两个独立的视图控制器。
您在iPod应用中看到的每个标签都有一个导航控制器。导航控制器包装应用程序选项卡的根视图控制器。然后将每个导航控制器设置为选项卡控制器的ViewControllers。代码看起来像这样
FirstTabViewController *first = [[FirstTabViewController alloc] init...];
SecondTabViewController *second = ...;
UINavigationController *nav1 = [[UINavigationController alloc] initWithRootViewController:first];
UINavigationController *nav2 = [[UINavigationController alloc] initWithRootViewController:second];
myTabBarController.viewControllers = [NSArray arrayWithObjects:nav1, nav2, nil];
// Then make sure to release things to avoid leaks
如果您想要处理来自所选播放列表中的说明,播放列表 - >歌曲列表的转换,您可以在播放列表视图控制器([self.navigationController pushViewController:theListOfSongsViewController animated:SUREWHYNOT]
)中执行此操作。
答案 1 :(得分:1)
到目前为止,我正在查看每个窗格中带有UINavigationControllers的UITabBarController,其中包含一些自定义代码,用于将目标选项卡上的导航控制器弹回到选项卡开关上的根目录。
答案 2 :(得分:0)
Apple有一些关于组合视图控制器(标签控制器内的导航控制器)的优秀文档