2013-10-10 2 views
10

Я пытаюсь установить setSelectedImageTintColor в iOS 7, но он не работает. Вот код, который у меня в AppDelegate.m под didFinishLaunchingWithOptionssetSelectedImageTintColor не работает в iOS 7

UITabBarController *tabBarController = (UITabBarController *) self.window.rootViewController; 
UITabBar *tabBar = tabBarController.tabBar; 

for (UITabBarItem *item in tabBar.items) 
    { 
     UIImage *image = item.image; 
     UIImage *correctImage = [image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; 
     item.image = correctImage; 
    } 

[[UITabBar appearance] setTintColor:[UIColor whiteColor]]; 
[[UITabBar appearance] setSelectedImageTintColor:[UIColor colorWithRed:44.0/255.0 green:176.0/255.0 blue:28.0/255.0 alpha:1.0]]; 
[[UITabBar appearance] setBarTintColor:[UIColor colorWithRed:51.0/255.0 green:51.0/255.0 blue:51.0/255.0 alpha:1.0]]; 

Он по-прежнему не будет показывать selectedImageTintColor. Он белый, если выбран; серый, если не выбран. Что я делаю не так?

ответ

15

Это известная проблема в iOS 7. Для выбранного изображения вкладки используется tintColor. selectedImageTintColor полностью игнорируется. Невозможно отточить невыбранные изображения вкладки.

Об этом discussion on the Apple Developer Forums.

Пожалуйста, напишите bug report with Apple.

+0

Я думаю, вы можете решить это, используя 'UIImage' с режимом' UIImageRenderingModeAlwaysOriginal'. – frangulyan

Смежные вопросы