Вставки UIButton для разных состояний - PullRequest
2 голосов
/ 19 февраля 2012

У меня есть UIBarButtonItem, содержащий кнопку, на которой я установил пользовательские фоновые изображения для нажатых / не нажатых состояний. Нажатое изображение смещается вниз на 4 пикселя, поэтому текст, когда оно не нажато, выглядит вертикально от центра. Я знаю, что могу использовать [button setTitleEdgeInsets:UIEdgeInsetsMake(10.0, 10.0, 0.0, 0.0)] для изменения положения текстовой метки, но могу ли я сделать это только для определенного состояния управления (без нажатия)?

Если это означает создание подкласса UIButton, я бы сам обработал весь чертеж в drawRect?

1 Ответ

1 голос
/ 19 февраля 2012

Нет, вам не нужно обрабатывать чертеж самостоятельно, если вы вложили в подкласс UIButton. Один из подходов заключается в том, чтобы просто наблюдать значение ключа-свойства enabled и selected в вашем подклассе, а затем просто настраивать вставки ребер на подходящее значение при каждом изменении состояния. Этот вопрос здесь относится к наблюдению за кнопкой для изменения состояния.

...