[[UITabBarItem appearance] setTitleTextAttributes:
     [NSDictionary dictionaryWithObjectsAndKeys:
      [UIColor blackColor], UITextAttributeTextColor, 
      [UIFont fontWithName:@"ProximaNova-Semibold" size:0.0], UITextAttributeFont, 
      nil] 
                                             forState:UIControlStateHighlighted];
    [[UITabBarItem appearance] setTitleTextAttributes:
     [NSDictionary dictionaryWithObjectsAndKeys:
      [UIColor grayColor], UITextAttributeTextColor, 
      [UIFont fontWithName:@"ProximaNova-Semibold" size:0.0], UITextAttributeFont, 
      nil] 
                                             forState:UIControlStateNormal];

解决方案 »

  1.   

    只能自定制tabbarController  
      

  2.   


    我在tabBarController.m中加入上述代码,只是修改了上述代码中的size,size 第一次用 5.0,第二次用 25.0,两次比较了一下,发现tab的标题大小没有改变哦。
      

  3.   

    是不是 UITabBarItem要用真正的变量代替?
      

  4.   

    颜色可以改,貌似字体改不了颜色确实可以改变,并且改变得不太对,我的是[[UITabBarItem appearance] setTitleTextAttributes:
         [NSDictionary dictionaryWithObjectsAndKeys:
          [UIColor blackColor], UITextAttributeTextColor, 
          [UIFont fontWithName:@"ProximaNova-Semibold" size:0.0], UITextAttributeFont, 
          nil] 
                                                 forState:UIControlStateHighlighted];
     
     
        [[UITabBarItem appearance] setTitleTextAttributes:
         [NSDictionary dictionaryWithObjectsAndKeys:
          [UIColor redColor], UITextAttributeTextColor, 
          [UIFont fontWithName:@"ProximaNova-Semibold" size:0.0], UITextAttributeFont, 
          nil] 结果,三个tab页的title全是红色,无论我选哪个,或者改变选项,切换tab页,所有tab页的title全是红色。
                   
      

  5.   

    颜色可以改,貌似字体改不了 
    我仔细想了下,你的方法可能是对的,可能是ProximaNova-Semibold字体不支持中文,才导致出问题了,换个宋体,试试,不知道宋体这里怎么写。
      

  6.   

    :[UIFont fontWithName:@"Helvetica" size:17.0]
      

  7.   

    测试了,果然是字体问题。现在大小就OK了。  但是这样,引入了一个新的问题,原来不加你的代码时,选中,title就变蓝,否则就是黑色,现在不管选中还是没有选中,全部都是红色。
    [[UITabBarItem appearance] setTitleTextAttributes:      [NSDictionary dictionaryWithObjectsAndKeys:
          [UIColor blackColor], UITextAttributeTextColor, 
          [UIFont fontWithName:@"Helvetica" size:0.0], UITextAttributeFont, 
          nil] 
                                                 forState:UIControlStateHighlighted];
     
     
        [[UITabBarItem appearance] setTitleTextAttributes:
         [NSDictionary dictionaryWithObjectsAndKeys:
          [UIColor redColor], UITextAttributeTextColor, 
          [UIFont fontWithName:@"Helvetica" size:0.0], UITextAttributeFont, 
          nil] 
      

  8.   

    修改 forstate :UIControlStateSelected