Разница между методами UIButton, которые устанавливают изображение - PullRequest
8 голосов
/ 05 января 2012

Скажите, пожалуйста, в чем разница между двумя методами UIButton:

- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state

и

- (void)setImage:(UIImage *)image forState:(UIControlState)state

В документации Apple об этом ничего не сказано.

1 Ответ

12 голосов
/ 05 января 2012

setBackgroundImage устанавливает фоновое изображение кнопки.Обычно вы используете это в сочетании с кнопкой типа «Пользовательский», чтобы использовать фоновое изображение как красивую форму и фон для кнопки (скажем, изображение, представляющее прямоугольник с закругленными углами и заполненный красивым градиентом)

setImage добавляет изображение / значок рядом с заголовком кнопки (все из которых, изображение и заголовок, накладываются поверх фонового изображения, поэтому, в конце концов, это называется «фон»).Если для кнопки также назначить заголовок, изображение будет отображаться рядом с заголовком, и его положение будет зависеть от длины заголовка (а также от свойств titleContentInsets / imageContentInsets, чтобы отрегулировать эту позицию)

Просто попробуйтеэто в Интерфейсном Разработчике (установите изображение для обоих, поиграйтесь, устанавливая название и т.д.), вы поймете это легче.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...