循环数组添加底部标签

首先创建四个继承于ViewController的类
导入图片至Assets.xcassets,修改格式为Original Image
接下来是ViewDidLoad

- (void)viewDidLoad {
    [super viewDidLoad];
    [self createTabbar];
}
-(void)createTabbar{
    //控制器名称
    !!!!4个类根据自己创建的复制过来
    NSArray *array = @[@"NewsViewController",@"VideoViewController",@"PictureViewController",@"JokeViewController"];   
    //点击前的样式
    NSArray *unSelectedImagerArray = @[@"新闻",@"视频",@"图片",@"段子"];
    //点击后的样式
    NSArray *SelectedImagerArray = @[@"新闻1",@"视频1",@"图片1",@"段子1"];
    
    //控制器数组
    NSMutableArray *ViewContro = [NSMutableArray new];
    
    //根据控制器的名称创建响应的控制器 并添加到控制器的数组里
    for (int i = 0; i<array.count; i++) {
        //string ----> Controller
        UIViewController *vc = [[NSClassFromString(array[i]) alloc]init];
        UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:vc];
        //设置Tabbritem  的 选中图片 未选中图片 标题
        nav.tabBarItem.image = [[UIImage imageNamed:unSelectedImagerArray[i] ] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
        nav.tabBarItem.selectedImage = [[UIImage imageNamed:SelectedImagerArray [i]] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
        nav.title = unSelectedImagerArray[i];
       // nav.navigationBar.barTintColor = [UIColor blackColor];
        //添加到数组里
        [ViewContro addObject:nav];
        
        
        
    }
    self.viewControllers = ViewContro;
    
}

@end

运行效果图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Py88888/article/details/83057878