Установите исходные изображения для элементов панели вкладок

Я хотел бы знать в UITabBar, есть ли способ установить цветные (исходные) изображения для элементов панели вкладок. После нескольких поисков я пришел, чтобы узнать, как изменить цвет панели вкладок, т.е. установить цветное изображение полосы, которое будет сделать трюк.

[self.homeTabbar.tabBar insertSubview:[[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"tab.JPG"]] autorelease] atIndex:0]; 

Я читал ответы в нескольких сообщениях о том, что Apple хотела бы использовать только эту панель вкладок черного цвета и серые изображения с синим цветом, выбранные для элементов панели вкладок.

После изменения цвета панели вкладок она выглядит так, как показано на снимке экрана ниже:

введите здесь описание изображения

Теперь, как вы можете видеть, изображения добавленных и всех озаглавленных элементов не так, как они назначены, т.е. фактические изображения имеют цвет, как показано ниже:

введите здесь описание изображения

введите здесь описание изображения

Интересно, почему исходное изображение затрагивается при использовании элементов панели вкладок.

Может ли кто-нибудь предоставить образец решения/предложения, а не предлагать использовать приложение Twitter или какие-либо другие предложения, уже сделанные для сообщений такого рода, что было бы сложно для новичка, такого как я.

Всем спасибо заранее :)


person Eshwar Chaitanya    schedule 27.02.2012    source источник


Ответы (3)


Вы можете сделать это только в iOS 5 или выше:

Посмотрите на этот метод на UITabBarItem:

- (void)setFinishedSelectedImage:(UIImage *)selectedImage withFinishedUnselectedImage:(UIImage *)unselectedImage
person Amy Worrall    schedule 27.02.2012
comment
О, но моя версия ios 4.3. Я сообщу вам об этом при тестировании в ios5. Спасибо за ответ - person Eshwar Chaitanya; 27.02.2012
comment
Можете ли вы опубликовать пример кода по этому методу, пожалуйста, просто для идеи - person Eshwar Chaitanya; 27.02.2012
comment
Боюсь, у меня нет примера кода. Просто вызовите этот метод на элементе панели вкладок, для которого вы хотите иметь другое изображение, и дайте ему два изображения: одно, когда вкладка выбрана (активна), и одно, когда она не активна. - person Amy Worrall; 27.02.2012
comment
Если вы действительно хотите использовать пользовательские изображения в версии iOS до 5, вы можете попробовать PESTabBarAddition. Имейте в виду, что Apple не поддерживает это ни на чем до iOS 5. - person Amy Worrall; 27.02.2012
comment
Спасибо, мистер Амория, за заботу и полезную информацию, я учту все это и соответствующим образом создам свой код, еще раз спасибо, TC :) - person Eshwar Chaitanya; 28.02.2012

[myTabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"aboutus.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"undo.png"]]

Вы можете использовать это. Но это работает только для iOS 5 и выше. У меня также возникает та же проблема, которую я решаю, проверяя версию устройства для iOS 5. Все еще нахожу решение для iOS 4 и ниже.

person python    schedule 30.04.2012
comment
Большое спасибо, но я получил аналогичный ответ выше, тем не менее, очень полезный ответ :) - person Eshwar Chaitanya; 02.05.2012
comment
Я решаю эту проблему для ios4, проверяя версию ios. И использовал изображение границы для ios4. Тогда без пользовательской панели вкладок вы получите приличную панель вкладок с элементами панели вкладок для ios4 и оригинальным эффектом изображений для ios5. Может быть, вам нравится эта идея. - person python; 02.05.2012
comment
Хм, звучит хорошо, дружище, постараюсь реализовать и отпишусь - person Eshwar Chaitanya; 03.05.2012

[_manageCardController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"managecards_icon.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"managecards_icon.png"]];

person Kemo    schedule 18.10.2012