iOS中控制器的实践和学习(4)简易5图之A4

这里涉及到两类导航类控制器的关系问题
这么来描述
根据简易图A4,划分并以以下字母标记:
N
V
T

关系1:N-V,T{类似简图A3,N-V类似其中UIView}
关系2:N,T-V{类似简图A2,T-V类似其中UIView}

其中X-V表示UIViewController受X控制
关系1中,T,通过TabItem来控制N-V
关系2中,N,通过push操作来控制T-V

先以关系1来处理:
在默认应用模版中有一个简易A3简图,从这里开始

1、创建A3简图的应用程序
2、选择MainWindow.xib,再选择TabBarController,拖2个UINavigationController在TabBarController下面,删除原有的First和Second两个UIViewController。然后分别在已创建好的UINavigationController下UIView Controller改为First和Second,这样方便看到实际效果。

编译并运行,效果图如下:


以关系2处理:
在默认应用模版中有一个简易B2简图,从这里开始

1、创建B2简图的应用程序
2、为Delegate类添加属性UITabBarController *tabbarController,IBOutlet;
3、在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions函数中,加入:[self.navigationController pushViewController:self.tabbarController animated:YES];
3、选择MainWindow.xib,添加TabBarController,在这个对象下修改UIViewController。再选择App Delegate对象,把TabBarController和tabbarController关联起来
    最终效果如下:
   
编译并运行,效果图如下:


至于在实际项目使用关系1还是关系2,这个要看各个控制关系

好,至于剩下的简图,就不需要详细了

good luck,相信能找合适的解决方式~

原文地址:https://www.cnblogs.com/GoGoagg/p/2106465.html