UI_UITabBarController

来源:互联网 发布:linux 网络测速工具 编辑:程序博客网 时间:2024/04/29 10:06

建立控制器

    // 普通控制器    GroupViewController *groupVC = [[GroupViewController alloc] init];    SecondViewController *secondVC = [[SecondViewController alloc] init];    ThirdViewController *thirdVC = [[ThirdViewController alloc] init];    FourthViewController *fourthVC = [[FourthViewController alloc] init];
    // 导航栏控制器    UINavigationController *groupNC = [[UINavigationController alloc] initWithRootViewController:groupVC];    UINavigationController *secondNC = [[UINavigationController alloc] initWithRootViewController:secondVC];    UINavigationController *thirdNC = [[UINavigationController alloc] initWithRootViewController:thirdVC];    UINavigationController *fourthNC = [[UINavigationController alloc] initWithRootViewController:fourthVC];```
@interface AppDelegate () <UITabBarControllerDelegate>
    // tabBarVC 控制器    UITabBarController *tabBarVC = [[UITabBarController alloc] init];    // 设置 tabBarVC 代理(先遵守协议)    tabBarVC.delegate = self;    // 设置 tabBar 默认选中的控制器    tabBarVC.selectedIndex = 1;    // 设置 tabBarVC 管理(包含)的控制器    tabBarVC.viewControllers = @[groupNC, secondNC, thirdNC, fourthNC, uiVC1, uiVC2, uiVC3];
    // 自定义样式 tabBarItem(选中颜色)注意是那种控制器    groupNC.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"活动" image:[UIImage imageNamed:@"activity"] selectedImage:[UIImage imageNamed:@"微信"]];    // 显示右上角 小圈圈    groupNC.tabBarItem.badgeValue = @"10";    secondNC.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"影院" image:[UIImage imageNamed:@"cinema"] selectedImage:[UIImage imageNamed:@"通讯录"]];    thirdNC.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"电影" image:[UIImage imageNamed:@"movie"] selectedImage:[UIImage imageNamed:@"发现"]];    fourthNC.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"我" image:[UIImage imageNamed:@"user"] selectedImage:[UIImage imageNamed:@"我"]];
    // 设置整个 tabBar    // 颜色(和样式冲突)    tabBarVC.tabBar.barTintColor = [UIColor yellowColor];    // 样式(和颜色冲突)//    tabBarVC.tabBar.barStyle = UIBarStyleBlack;    // 字体颜色    [tabBarVC.tabBar setTintColor:[UIColor greenColor]];
#pragma mark - 选择 tabBar 所控制的控制器,会执行的方法(每次都会执行)- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{    NSInteger index =  [tabBarController.viewControllers indexOfObject:viewController];    if (index == 3) {        NSLog(@"four");    }    if (tabBarController.selectedIndex == 2) {        NSLog(@"three");    }}#pragma mark - 控制 tabBar 是否可以点击- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController{    return YES;}
    // 获取到所有的 UINavigationBar(工程里面所有)    [[UINavigationBar appearance] setBarTintColor:[UIColor purpleColor]];
1 0
原创粉丝点击