Начиная с API 21 , вы должны использовать метод getDrawable(int, Theme)
вместо getDrawable(int)
, поскольку он позволяет вам выбрать drawable
объект, связанный с конкретным resource ID
для данного screen density/theme
. Вызов метода deprecated
getDrawable(int)
эквивалентен вызову getDrawable(int, null)
.
Вместо этого вы должны использовать следующий код из библиотеки поддержки:
ContextCompat.getDrawable(context, android.R.drawable.ic_dialog_email)
Использование этого метода эквивалентно вызову:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
return resources.getDrawable(id, context.getTheme());
} else {
return resources.getDrawable(id);
}