У меня есть пользовательский UIButton
который представляет собой облако, прозрачный черно-белый файл .png, без состояния вниз, только одно изображение. При нажатии и удержании пальца он становится темно-серым. Я пытаюсь изменить этот темно-серый цвет на нечто менее репрессивное. Кнопка находится в открытом виде, а не в панели вкладок, панели инструментов или навигационном контроллере.Изменить цвет темного оттенка серого, удерживая пользовательский UIButton?
Я уже пробовал установить tintColor
(который документально сообщает мне, подходит только для «некоторых» типов кнопок, в которых нет указаний на которые).
Я также попытался изменить все, что я могу найти в интерфейсе Builder, относящемся к цветам выделения, состояниям по умолчанию и т. Д. Ничего не изменило вообще.
Я даже попытался установить собственное изображение кнопки для своего состояния UIControlStateHighlighted
, но даже это вызывает появление темно-серого наложения, когда я держу палец над ним.
Как я могу изменить этот цвет? Я рассмотрел множество других вопросов здесь, на SO и не смог найти решение, которое работает для меня. Любая помощь будет принята с благодарностью!
EDIT: Я решил проблему, используя категорию UIImage
, который добавляет метод, который использует CoreGraphics
применить оттенок предоставленного UIImage
. Затем я устанавливаю THAT-образ в качестве подсветки, и все хорошо. Кажется, много обручей-ля меняет цвет, который Apple должна была изменить, но c'est la vie.
Спасибо. Примут через 10 минут, когда это позволит мне .. – Luke
Я только что редактировал: настройка пользовательского образа для 'UIControlStateHighlighted' действительно должна работать. Я попробую еще раз и обязательно сделаю ошибку. –
Я думаю, что он устанавливает его, но не растягивает его должным образом. Я делаю некоторые вещи с изменением размера изображения на основе текста внутри него. Он показывает середину белого цвета, но темно-серый вокруг сторон, поэтому угадывание изображения не заполняет пространство оригинала. Что странно, так как я настраиваю его на себя. – Luke