Установка цвета объекта Paint в пользовательском представлении
Я пытаюсь создать собственное представление и объявил стилизованные атрибуты, как показано ниже:
<resources>
<declare-styleable name="NewCircleView">
<attr name="radius" format="integer"/>
<attr name="circlecolor" format="color"/>
</declare-styleable>
</resources>
в конструкторе customview эти значения получаются как показано ниже:
circleradius=a.getInt(R.styleable.NewCircleView_radius, 0);//global var
circlecolor=a.getColor(R.styleable.NewCircleView_circlecolor, 0);//global var and a is the typed array
Представление используется путем объявления xml, как показано ниже:
<com.customviews.NewCircleView
android:layout_below="@id/thetext"
android:layout_width="match_parent"
android:layout_height="fill_parent"
app:radius="10000"
app:circlecolor="@color/black"<!--this is defined in colors.xml
/>
В пользовательском представлении, когда я устанавливаю объект рисования как: -
thePaintObj.setColor(circlecolor);//circlecolor logs to an integer as expected
Я не получаю цвет- "черный", определенный в XML
Однако, когда я установил цвет как
thePaintObj.setColor(Color.GRAY)
Я получаю цвет в представлении
Может кто-нибудь сказать мне, что я буду делать неправильно?
(N.B: -Если вы хотите, чтобы я опубликовал больше кода, пожалуйста, дайте мне знать)
РЕДАКТИРОВАТЬ1: - Опубликовать мои colors.xml. Похоже, это не ясно в моих комментариях к коду: -
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="red">#7f00</color>
<color name="blue">#770000ff</color>
<color name="green">#7700ff00</color>
<color name="yellow">#77ffff00</color>
<color name="black">#000000</color>
</resources>