Как установить paint.setColor(R.color.white)
У меня есть пользовательский вид, который использует Paint и Canvas для рисования объектов. Мой вопрос заключается в том, как установить:
int color = R.color.white;
paint.setColor(color);
из моего /res/valuse/color.xml, который включает в себя такие ресурсы, как
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#FFFFFF</color>
<color name="black">#000000</color>
...
</resources>
Ответы
Ответ 1
Что-то вроде этого:
int myColor =
context.getResources().getColor(com.example.test.R.color.white);
paint.setColor(myColor);
Метод setColor()
принимает номер цвета как значение int
, но не идентификатор ресурса, который также является int
.
Ответ 2
Попробуйте использовать color.white
:
paint.setColor(Color.white)
Ответ 3
сначала получите цвет
int color = context.getResources().getColor(R.color.id); // old
теперь устарел, используйте вместо этого
int color = ContextCompat.getColor(context, R.color.your_color); // new
установить цвет
paint.setColor(color);