Я пытаюсь получить ?colorSecondary
в моем BroadcastReceiver
, чтобы я мог установить цвет значка уведомления и текста действия. Я использую следующий метод для получения значения моего R.attr.colorSecondary
из моей текущей темы.
@ColorRes
public static int getAttrColorResId(Context context, @AttrRes int resId) {
TypedValue outValue = new TypedValue();
Resources.Theme theme = context.getTheme();
boolean success = theme.resolveAttribute(resId, outValue, true);
return outValue.resourceId;
}
// usage
int colorRes = getAttrColorResId(context, R.attr.colorSecondary);
Теперь проблема в том, что я получаю false
результат от resolveAttribute()
вызова. Похоже, что контекст, предоставленный BroadcastReceiver
, не может найти colorSecondary
. Как получить нужный атрибут из контекста BroadcastReceiver
?