//快速添加一个视图控制器

//快速添加一个视图控制器


#import <UIKit/UIKit.h>

 

@interface UITabBarController (ZJTabBarExtension)

//快速添加一个视图控制器

-(UIViewController*)andViewController:(Class)cls title:(NSString*)title image:(NSString*)image;

@end

 

@implementation UITabBarController (ZJTabBarExtension)

-(UIViewController*)andViewController:(Class)cls title:(NSString*)title image:(NSString*)image

{

//cls 传入界面所对应的类型

//    创建视图控制器

    UIViewController*vc=[[cls alloc]init];

    vc.title=title;

    UINavigationController*nc=[[UINavigationController alloc]initWithRootViewController:vc];

    nc.tabBarItem.image=[UIImage imageNamed:image];

    

//添加到标签栏中

    NSMutableArray *marr =[[NSMutableArray alloc]initWithArray:self.viewControllers];

    [marr addObject:nc];

    self.viewControllers=marr;

//    返回创建的视图控制器

    

    return vc;

 }

接着在需要添加标签控制器和导航控制器的视图中添加到delegate引入头文件

 

#import "AppDelegate.h"

#import "LimitViewController.h"

#import "FreeViewController.h"

#import "SaleViewController.h"

#import "TopicViewController.h"

#import "HotViewController.h"

#import "UITabBarController+ZJTabBarExtension.h"

@interface AppDelegate ()

 

@end

 

@implementation AppDelegate

 

 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // Override point for customization after application launch.

//    创建导航栏和标签栏

    [self creatTabBar];

 

    return YES;

}

-(void)creatTabBar

{

//  AppList()

//    Limit(AppList)

//    Sale(AppList)

//     Free(AppList)

//    Topic(Root)

//    Hot(AppList)

//以前的繁琐方法

//    LimitViewController*lvc=[[LimitViewController alloc]init];

    lvc.navigationItem.title=

    lvc.navigationItem.image=

//    UINavigationController*nc =[[UINavigationController alloc]initWithRootViewController:lvc];

    

    -现在的方法

    UITabBarController *tbc=[[UITabBarController alloc]init];

    [tbc andViewController:[LimitViewController class] title:@"限免" image:@"tabbar_limitfree.png"];

        [tbc andViewController:[SaleViewController class] title:@"降价" image:@"tabbar_reduceprice.png"];

        [tbc andViewController:[FreeViewController class] title:@"免费" image:@"tabbar_appfree.png"];

        [tbc andViewController:[TopicViewController class] title:@"专题" image:@"tabbar_subject.png"];

        [tbc andViewController:[HotViewController class] title:@"热榜" image:@"tabbar_rank.png"];

        self.window.rootViewController=tbc;

    self.window.backgroundColor=[UIColor whiteColor];

    代码量大大减少

}

 

转载于:https://www.cnblogs.com/JeinoZT/p/4403892.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值