ios 控制器 UITabBarController

转自: http://www.maxiaoguo.com/clothes/250.html

UITabBarController 跟 UINavigationController一样的都是存放各种控制器,不同的是 UINavigationController 的导航作用主要在头部,而UITabBarController 是底部

UITabBarController的创建有两种方式,代码创建和通过 storyboard 创建

用storyboard 创建的时候无法检测controller中的按钮的点击,这样就需要在自定义controller,自定义好在storyboard 的属性中关联上自定义的controller

1、代码创建

在AppDelegate的生命周期中的didFinishLaunchingWithOptions 方法中其中UIViewController 是系统的 直接alloc init就行

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];
    
    // 1.创建tabbar控制器
    UITabBarController *tabbarVc = [[UITabBarController alloc] init];
    
    // 2.设置为window的根控制器
    self.window.rootViewController = tabbarVc;
    
    // 3.添加子控制器
    UIViewController *vc1 = [[UIViewController alloc] init];
    vc1.view.backgroundColor = [UIColor redColor];
    vc1.tabBarItem.title = @"联系人";
    vc1.tabBarItem.image = [UIImage imageNamed:@"tab_buddy_nor"];
//    [tabbarVc addChildViewController:vc1];
    
    UIViewController *vc2 = [[UIViewController alloc] init];
    vc2.view.backgroundColor = [UIColor blueColor];
    vc2.tabBarItem.title = @"动态";
    vc2.tabBarItem.image = [UIImage imageNamed:@"tab_qworld_nor"];
//    [tabbarVc addChildViewController:vc2];
    
    UIViewController *vc3 = [[UIViewController alloc] init];
    vc3.view.backgroundColor = [UIColor greenColor];
    vc3.tabBarItem.title = @"设置";
    vc3.tabBarItem.image = [UIImage imageNamed:@"tab_me_nor"];
//    [tabbarVc addChildViewController:vc3];
    
    tabbarVc.viewControllers = @[vc1, vc2, vc3];
    
    [self.window makeKeyAndVisible];
    return YES;
}

2、通过storyboard 创建 UITabBarController

下图是一个qq app的一个模型,最外层是一个tableBarController 里边层是UINavagationController ,直接在右边拖个tableBarController ,然后ctrl 连线跳转


ios 控制器 UITabBarController_第1张图片

你可能感兴趣的:(ios 控制器 UITabBarController)