(ПРИМЕЧАНИЕ: Я вижу, есть несколько аналогичных вопросов по SO, но ни один из них, похоже, не справляется с моей конкретной проблемой для изменения невыбранного внешнего вида как пользовательских, так и системных UITabBarItems.)Как установить невыбранный оттенок UITabBarItem ***, включая системные элементы *** (iOS7)
Я работаю в iOS7. У меня есть UITabBar с несколькими кнопками. Некоторые из них - мои кнопки, некоторые - системные кнопки. Пример:
UITabBarItem *searchButton = [[UITabBarItem alloc] initWithTabBarSystemItem: UITabBarSystemItemSearch tag: navSearchItem];
UITabBarItem *bookMkButton = [[UITabBarItem alloc] initWithTabBarSystemItem: UITabBarSystemItemBookmarks tag: navBookmarksItem];
UITabBarItem *homeButton = [[UITabBarItem alloc] initWithTitle: @"Home" image: [self tabBarImageNamed: @"home-tab"] tag: navHomeItem];
UITabBarItem *setingButton = [[UITabBarItem alloc] initWithTitle: @"Settings" image: [self tabBarImageNamed: @"settings-tab"] tag: navSettingsItem];
navTabBar.items = @[ searchButton, homeButton, bookMkButton, setingButton];
я могу установить выбранные кнопки оттенок достаточно легко, с:
[[UITabBar appearance] setSelectedImageTintColor: MY_FAVORITE_COLOR];
Я могу установить невыбранный цвет текста кнопки на белый:
[[UITabBarItem appearance] setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys: [UIColor whiteColor], UITextAttributeTextColor, nil]
forState: UIControlStateNormal];
То, что я хочу необходимо установить UNSELECTED Изображение кнопки изображение оттенок до белого. Я мог бы установить невыбранное изображение достаточно легко, но это работает только для моих кнопок. Я хочу сделать это и для системных кнопок. То есть, я хочу, чтобы мой поиск & кнопок закладок также был невыбранным - белый.
Я уверен, что Apple будет жаловаться, если я попытаюсь воссоздать их значки, чтобы создавать пользовательские кнопки. Документы довольно специфичны, что мы не должны делать ничего отдаленно напоминающего иконки Apple.
Подсказки?
Спасибо!
EDIT: Причина, по которой я хочу исключить = белый, заключается в том, что по сравнению с моим спроектированным фоном серый цвет по умолчанию делает иконки/текст жесткими на глазах.
это работает только с iOS 6, но не iOS 7 –
уверен, что вы имеете в виду iOS7, а не iOS6? – jimbob