原IOS博客项目搭建-02-自定义底部导航控制器UITabBarController


(一)、创建自定义导航控制类

①.底部导航栏示例

②、创建自定义导航控制器类,继承父类UITabBarController

在程序启动文件中,用自定义的IWTabcontroller 替换原来默认的TabController

   初始化所有的子控制器(首页,消息,广场,我)每个控制器的内容都不一样,所以每个自控制器需要实现自己的业务逻辑,创建四个子控制器,并继承父类TabController。

在自定义的导航控制器IWTabBarViewController.m中引入四个子控制器,并创建各自对象:

//
//  IWTabBarViewController.m
//  ItcastWeibo
//
//  Created by kaiyi on 16-1-20.
//  Copyright (c) 2016年 kaiyi. All rights reserved.
//

#import "IWTabBarViewController.h"
#import "IWHomeViewController.h"
#import "IWMessageViewController.h"
#import "IWDiscoverViewController.h"
#import "IWMeViewController.h"

@interface IWTabBarViewController ()

@end

@implementation IWTabBarViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    // 初始化所有的子控制器(首页,消息,广场,我)每个控制器的内容都不一样,所以每个自控制器实现自己的业务逻辑
    
    // 1.首页  【暂时不考虑代码重构性】
    IWHomeViewController *home = [[IWHomeViewController alloc] init];
    home.view.backgroundColor = [UIColor redColor];    // 自控制器添加背景色
    home.tabBarItem.title = @"首页";
    home.tabBarItem.image = [UIImage imageNamed:@"tabbar_home"];
    [self addChildViewController:home];                // 添加子控制器
    
    // 2.消息
    IWMessageViewController *message = [[IWMessageViewController alloc] init];
    message.view.backgroundColor = [UIColor greenColor];    // 自控制器添加背景色
    message.tabBarItem.title = @"消息";
    message.tabBarItem.image = [UIImage imageNamed:@"tabbar_message_center"];
    [self addChildViewController:message];                // 添加子控制器
    

    // 3.发现
    IWDiscoverViewController *discover = [[IWDiscoverViewController alloc] init];
    discover.view.backgroundColor = [UIColor grayColor];    // 自控制器添加背景色
    discover.tabBarItem.title = @"广场";
    discover.tabBarItem.image = [UIImage imageNamed:@"tabbar_discover"];
    [self addChildViewController:discover];                // 添加子控制器
    

    // 4.我
    IWMeViewController *me = [[IWMeViewController alloc] init];
    me.view.backgroundColor = [UIColor yellowColor];    // 自控制器添加背景色
    me.tabBarItem.title = @"我";
    me.tabBarItem.image = [UIImage imageNamed:@"tabbar_profile"];
    [self addChildViewController:me];                   // 添加子控制器
    
   
}


@end

 

初步导航界面搭建效果图:








本站声明
本文转载自:http://my.oschina.net/corwien/blog/607148     作者:东方红楼     发布日期:2016-01-21 00:48:00     本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。


 
© 2014-2016 ITdaan.com 粤ICP备14056181号