2

这是我在这个了不起的社区上的第一篇文章。现在已经浏览了很长一段时间,我完全爱上了它。

我已经学习 iOS 几个星期了,但仍在努力寻找为我正在构建的应用程序实现健壮和稳固结构的最佳方法。我发现“ UITabBarController ”是实现我的目标的最佳方式,但我仍然希望标签栏消失并制作我自己的“极端”自定义导航。自定义导航将是一个带有视图 的UIViewControllerUIButtons ,并且该视图包含.

所以这出现在我的AppDelegate.m中:

// ASSIGN CUSTOM NAV & TAB BAR CONTROLLER 
[self.window setRootViewController:tabBarController];
[tabBarController.view addSubview:customNavController.view];

我的AppDelegate.h中有这个:

@property (strong, nonatomic) CustomNavigationViewController* customNavController;
@property (strong, nonatomic) UITabBarController* tabBarController;

这是正确的方法吗?所以我总是可以去我的AppDelegate ,让我customNavController可以发送消息到.. 还有我的,例如tabBarController设置属性。selectedIndex

所以主要问题仍然存在:我有一个UITabBarController(保存应用程序的所有部分)和一个UIViewController(自定义导航),我希望他们能够互相交谈

更新:这是我如何看待脑海中流程的方案截图: https ://www.dropbox.com/s/5k49pe2idn6zxcd/ios_customnavigation_scheme.png

欢迎任何技巧/提示!好奇你们想出什么办法。在此先感谢,Y。

4

1 回答 1

0

我不太确定您打算如何在您的应用程序中使用这些控制器,或者为什么需要它们相互通信,但您可以将 UINavigationControllers 嵌入到 UITabBarController 的每个“选项卡”中。如有必要,您还可以在您的客户视图中隐藏标签栏(如果您搜索该网站,则会有很多问题/答案)。然后,这些内置控制器将处理视图更改,而无需您处理细节,当然比滚动您自己的控制器要容易得多。

如果您还没有,我会查看有关 MVC 的 Apple 文档,因为它可能会帮助您做出一些设计决策。

祝你好运。

于 2012-12-10T14:05:35.693 回答