Определение пользовательской цветовой переменной

Я хочу изменить некоторые цвета кнопок в моем коде. Я не могу отличить способ определения цветовой переменной, а затем назначить значение цвета этой переменной.

Я попробовал это         Цвет SelectedColor = новый Цвет();

      f1.setBackgroundColor(Color.rgb(0, 0, 100));

Я хочу использовать ColorSelected вместо значения RGB, чтобы я мог редактировать значение при запуске.

          f1.setBackgroundColor(Color.ColorSelected);

Ответ 1

вы можете использовать values/colors.xml. Например,

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="menu_background">#666666</color>
</resources>

Ответ 2

"Я не могу отличить способ определения цветовой переменной, а затем назначить значение цвета этой переменной".

Вот как вы можете определить цветовую переменную:

int selectedColor = Color.rgb(0, 0, 100);

и используйте его:

f1.setBackgroundColor(selectedColor);

Ответ 3

Вы должны добавить атрибут type="color" в элемент цвета:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color type="color" name="menu_background">#666666</color>
</resources>

Итак, вы можете использовать цвет в XML файле как "@color\menu_background" а также из java-кода.