Какая разница между setBackgroundImage: Forstate и setImage: Forstate:
Я пытаюсь установить изображение для UIButton.
Я не знаю разницы между setBackgroundImage: Forstate и setImage: Forstate:
Может ли кто-нибудь помочь мне?
Спасибо и с наилучшими пожеланиями.
Ответы
Ответ 1
-
setImage:forState:
устанавливает изображение как фактическое содержимое кнопки. Например, вы не можете видеть название кнопки, даже если вы ее установили, потому что вы установили изображение в качестве содержимого.
-
setBackgroundImage:forState:
устанавливает изображение в качестве фона. В этом случае вы можете установить заголовок, и он отображается поверх изображения.
Ответ 2
setBackgroundImage: следует за фреймом, т.е. если и изменить фрейм, фоновое изображение растягивается или сжимается вместе с ним. В отличие от setImage, это не то же самое. Изображение имеет свой размер. В setImage изображение является фактическим содержимым кнопки.
Ответ 3
Различие заключается в обрамлении
Я объясню вам с помощью примера, предположим, что размер вашего изображения составляет 40 * 40, а рамка кнопки - 20 * 20, а если вы используете метод setBackgroundImage: forState: изображение будет отображаться в 20 * 20 кадрах и если вы используете setImage: forState: метод, вы увидите кнопку с размером изображения 40 * 40 кадров.
В этом разница.
Счастливое кодирование!!