Страницы

Поиск по вопросам

пятница, 1 февраля 2019 г.

getResources().getColor() is deprecated

Почему выводит ошибку getResources().getColor() is deprecated при попытке изменить цвет фона?


Ответ

Это не ошибка, но предупреждение об устаревании метода. Т.е. он будет работать, но, однажды, может перестать. Теперь надо пользоваться методом ContextCompat#getColor(Context context, int color) вот так
ContextCompat.getColor(context, R.color.your_color);
Если заглянуть в исходники сего метода, то можно увидеть как он работает:
public static final int getColor(Context context, int id) { final int version = Build.VERSION.SDK_INT; if (version >= 23) { return ContextCompatApi23.getColor(context, id); } else { return context.getResources().getColor(id); } }

Комментариев нет:

Отправить комментарий