Использование setImageResource() должно извлекать его ресурс обратно совместимым образом без каких-либо дополнительных усилий.
Однако, если вы используете setImageDrawable(), ImageView/ImageButton не поможет с любым обратным сжатием, и вы можете предоставить рисованный с обратным сжатием, который важен, например, для. если использовать VectorDrawables. Следующее будет загружать и устанавливать рисование таким образом:
val drawable = AppCompatResources.getDrawable(context, resourceId)
image.setImageDrawable(drawable)