2013-03-20 1 views
4

Я пытаюсь установить свои собственные изображения в качестве выбранных и невыделенных изображений на UITabBarItem, но не повезло. Я попытался следующий код в контроллере viewDidLoad вида и viewWillAppear методов, но ни работа:Использование пользовательских выбранных и невыделенных изображений на UITabBarItem

[self.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"on_rojo"] withFinishedUnselectedImage:[UIImage imageNamed:@"on"]]; 

Что я делаю неправильно? Я также читал: iOS 5: UITabBarItem setFinishedSelectedImage:withFinishedUnselectedImage: not working/ignored, но я создал свой UITabBarController на IB, а не программно. Это проблема?

Спасибо заранее,

ответ

13

Вы должны указать изображения для каждой вкладки элемента. Следующий код работает для меня

if ([[tabBarController.tabBar.items objectAtIndex:0] respondsToSelector:@selector(setFinishedSelectedImage:withFinishedUnselectedImage:)]) { 

    [[tabBarController.tabBar.items objectAtIndex:0] setFinishedSelectedImage:[UIImage imageNamed:@"blabla1.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"bleble1.png"]]; 
    [[tabBarController.tabBar.items objectAtIndex:1] setFinishedSelectedImage:[UIImage imageNamed:@"blabla2.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"bleble2.png"]]; 
    [[tabBarController.tabBar.items objectAtIndex:2] setFinishedSelectedImage:[UIImage imageNamed:@"blabla3.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"bleble3.png"]]; 
    [[tabBarController.tabBar.items objectAtIndex:3] setFinishedSelectedImage:[UIImage imageNamed:@"blabla4.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"bleble4.png"]]; 

} 
+0

Где должен быть размещен код? Могу ли я использовать его в 'viewDidLoad' из одного из контроллеров представления, отображаемых UITabBarViewController? – neutrino

+0

Конечно! Оно работает! Я приму свой ответ. Большое спасибо! – neutrino

+0

Помните, что в iOS7 вам нужно использовать SELECTED версию значков в раскадровке с помощью этого кода. – JulianB

0

Попробуйте это, я использовал это:

ALTabbar

+0

Спасибо, но я не был заинтересован в коммерческом управлении, просто хочу знать, как правильно использовать 'setFinishedSelectedImage: withFinishedUnselectedImage'method. – neutrino

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