В чем разница между ImageView.setBackgroundResource и ImageView.setImageResource?
Я видел эти разные подходы при настройке изображений, но я не понимаю.
Почему существуют два метода?
Ответ 1
setBackgroundResource предназначен для установки фона ImageView. setImageResource предназначен для установки изображения src ImageView.
Дано:
ImageView iv = new ImageView(this);
Тогда:
iv.setBackgroundResource(R.drawable.imagedata);
Поместит изображение на весь фон. Это означает, что он растянет изображение, чтобы полностью заполнить этот фон, даже если размер изображения слишком мал.
imageView.setImageResource(R.drawable.imagedata);
Будет занимать только размер изображения в ImageView.
Для этого вы также хотите установить
для вашего ImageView. Если размер изображения меньше, чем у ImageView, оставшаяся рамка будет оставлена пустой и будет отображаться фон.
Ответ 2
SetBackdroundResource предназначен для рисования или цвета, который вы хотите установить на фоне изображения, и ваш setImageResource похож на отображение на нем.
поэтому setImageResource предназначен для добавления любого ресурса на вашу лицевую сторону изображения. попробуйте этот пример и посмотрите на разницу. Галерея Android, пример ImageView. Это двухслойный эффект, обратная сторона (setBackgroundResource) и frontside (setImageResource).
Ответ 3
setBackgroundResource означает android: background = " "setImageResource означает android: src=" "