【发布时间】:2017-08-26 08:05:04
【问题描述】:
这是大多数移动应用程序使用的常见设计模式
+-------------------------+
| title |
+-------------------------+
| |
| |
| |
| |
| |
| |
| content |
| |
| |
| |
| |
| |
+-------------------------+
| |tab1| |tab2| |tab3| |
+-------------------------+
主要思想是当用户按下tab1或tab2或tab3时,内容会相应改变。
我现在正在做的事情(代码不是故事板)是制作一个ViewController 来显示内容和底部面板,并制作一个UINavigationController 来显示标题
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
ViewController *viewController = [[ViewController alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:viewController];
self.window.rootViewController = nav;
[self.window makeKeyAndVisible];
}
当用户按下底部选项卡时,更改内容视图,同时使用subviews 更改内容,但我发现更改内容时发现:
- 视图无法以标题的高度正确地开始。
- 此外,我应该在同一个视图控制器中编写所有逻辑,这会导致代码混乱。
如何实现这样的布局?
【问题讨论】:
-
我们经常使用一个UITabbarController作为rootWindow,里面包含了几个导航。
-
你创建新项目时有一个预设的 TabBar 应用程序。只需选择它。另外,请学习故事板,它会让您的生活更轻松。
标签: ios objective-c