iPhone - UIButton - фоновое изображение для инвалидов

У меня есть UIButton, в котором я устанавливаю фоновое изображение для трех состояний: нормальное, выделенное и отключенное, все в следующем формате:

[button setBackgroundImage:buttonBGD forState:UIControlStateDisabled];

Моя проблема в том, что когда кнопка отключена, iPhone выбирает для меня осветление изображения. Что нежелательно. Но если я скажу:

[button setAdjustsImageWhenDisabled:NO];

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


person RyanJM    schedule 03.11.2010    source источник


Ответы (3)


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

Надеюсь это поможет.

person Parth Bhatt    schedule 04.11.2010
comment
Вот чего я боялся и в итоге сделал. Спасибо. - person RyanJM; 04.11.2010
comment
Добро пожаловать RyanJM. Я рад помочь вам. :] - person Parth Bhatt; 06.11.2010

Пытаться:

[button setBackgroundImage:buttonBGD forState:UIControlStateNormal | UIControlStateDisabled]

Если вы хотите такое же отключенное изображение, когда кнопка выбрана и отключена, добавьте:

[button setBackgroundImage:buttonBGD forState:UIControlStateSelected | UIControlStateDisabled];

Надеюсь, это поможет!

person Quentin    schedule 08.11.2012

Попробуйте удалить выбранное состояние, когда оно отключено: [button setSelected:NO];

person Andrei Radulescu    schedule 16.10.2012