Я пытаюсь получить цвет пульсации во время выполнения:
<ImageView
android:id="@+id/close_button"
...
android:padding="12dp"
android:alpha="0"
android:theme="@style/ripple_theme"
android:background="?attr/selectableItemBackground"
android:contentDescription="@string/og_close_icon_a11y"
android:visibility="gone"
app:srcCompat="@drawable/quantum_gm_ic_close_vd_theme_24"
tools:ignore="InconsistentLayout"/>
values.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="ripple_theme">
<item name="colorControlHighlight">@color/google_yellow100</item>
</style>
</resources>
Плюс мне нужно установить альфа равным 10%, или это значение, установленное пульсацией автоматически?
Я пытался получить значение цвета android.R.attr.colorControlHighlight во время выполнения, но всегда получаю отрицательное значение.
Как я могу это исправить?
int result = 0;
View closeBtn = findViewById(R.id.close_button);
TypedValue outValue = new TypedValue();
Resources.Theme theme = closeBtn.getContext().getTheme();
boolean wasResolved =
theme.resolveAttribute(android.R.attr.colorControlHighlight, outValue, true);
if (wasResolved) {
result =
outValue.resourceId == 0
? outValue.data
: ContextCompat.getColor(getContext(), outValue.resourceId);
}
result = result + 0;