iOS OC tabbar的item文字默认选中是蓝色,修改选中颜色

- (UINavigationController *)navigationControllerWithRoot:(UIViewController *)rootViewController
                                                tabTitle:(NSString *)tabTitle
                                               imageName:(NSString *)imageName
                                                     tag:(NSInteger)tag{
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:rootViewController];
    nav.tabBarItem = [[UITabBarItem alloc] initWithTitle:tabTitle 
                                                   image:ImageNamed(imageName)
                                                     tag:tag];
    
       // 默认
        NSMutableDictionary *attrs = [NSMutableDictionary dictionary];
        attrs[NSFontAttributeName] = [UIFont systemFontOfSize:10];
        attrs[NSForegroundColorAttributeName] = [UIColor grayColor];

        // 选中
        NSMutableDictionary *attrSelected = [NSMutableDictionary dictionary];
        attrSelected[NSFontAttributeName] = [UIFont systemFontOfSize:14];
        attrSelected[NSForegroundColorAttributeName] = RGBAColor(24, 24, 24, 1.0);
        
        //赋值
        UITabBarItem *item = [UITabBarItem appearance];
        [item setTitleTextAttributes:attrs forState:UIControlStateNormal];
        [item setTitleTextAttributes:attrSelected forState:UIControlStateSelected];

    return nav;
}

其中//默认 

// 选中
 //赋值

这三个是关键


posted on 2024-10-18 14:18  高彰  阅读(16)  评论(0编辑  收藏  举报

导航