Как получить цвета из gradientDrawable на android Marshmallow - PullRequest
0 голосов
/ 18 июня 2020

Мое приложение использует GradientDrawable. Мне нужно получить цвета из GradientDrawable и установить их в качестве фона.

private int[] getGradientColors(GradientDrawable drawable) {
    // So I have to add this check, cause getColors() method requires min API 24 or higher
    if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.N)
       return drawable;
    return Objects.requireNonNull(drawable).getColors();
}

Есть ли альтернативный способ получить эти цвета в API 23?

1 Ответ

0 голосов
/ 18 июня 2020

Насколько я понимаю, вы хотите установить градиент в качестве фона макета.

Добавление этой строки в родительский макет установит фон как градиент

android:background="@drawable/gradient"

ИЛИ

Через код

linearLayout.setBackgroundResource(R.drawable.gradient);
...