Изображение кнопки для UIControlStateSelected не работает после настройки UIBarButtonItem через UIAppearance

Я настроил UIBarButtonItem в моем AppDelegate.m, используя UIAppearance и все кнопки панели показывают правильные изображения в нормальном и выбранном состояниях.

Я хочу, чтобы кнопки "Готово" и "Сохранить" использовали другое изображение (чтобы они были голубыми, а не серыми), поэтому я использую -setBackgroundImage: forState: barMetrics установить два разных изображения для UIControlStateNormal а также UIControlStateSelected в -viewDidLoad,

Изображение для UIControlStateNormal работает нормально, но UIControlStateSelected один не отображается, вместо этого он показывает исходное изображение, которое я использовал для выбранных состояний в AppDelegate.m. Если я закомментирую оригинальное изображение, новое (синее) будет отображаться правильно.

Как правильно установить различные фоновые изображения для определенных кнопок?

1 ответ

Решение

Я верю UIControlStateHighlighted это то, что вы ищете.

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

Другие вопросы по тегам