Получить цвет из идентификатора ресурса целое число дает ошибку - PullRequest
0 голосов
/ 24 января 2019

Я создал пользовательский вид, который принимает остаток цвета фона и resId цвета тени. Но когда я конвертирую идентификаторы ресурсов, чтобы хранить их в переменной int. Выдает ошибку как

Expected a color resource id (R.color.) but received an RGB integer 

Ниже приведены мои методы установки

    @Override
    public void setBackgroundColor(@ColorRes int backgroundResId) {
        this.backgroundColor = ContextCompat.getColor(context, backgroundResId);
    }

    public void setShadowColor(@ColorRes int shadowColorId) {
        this.shadowColor = ContextCompat.getColor(context, shadowColorId);
    }

Та же ошибка отображается при использовании

public void setBackgroundColor(@ColorRes int backgroundResId) {
    this.backgroundColor = context.getResources().getColor(backgroundResId);
}

1 Ответ

0 голосов
/ 24 января 2019

Я полагаю, вы передали неверный аргумент в вашем методе setBackgroundColor. Вы должны использовать это так:

//some code
setBackgroundColor(R.color.colorPrimary)
//some code
...