gpt4 book ai didi

Android 线性渐变 XML

转载 作者:IT老高 更新时间:2023-10-28 21:42:21 31 4
gpt4 key购买 nike

我遇到了 XML 中的 LinearGradient 定义的一个小问题。我想要的是使用接受颜色数组和位置数组的构造函数。

这个:

    LinearGradient(float x0, float y0, float x1, float y1, 
int[] colors, float[] positions, Shader.TileMode tile)

如何在 XML 中传递数组?这是带有渐变定义的 XML 示例,但很简单。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#474946"
android:endColor="#181818"
android:angle="270"/>
<corners android:radius="5dp" />
</shape>

最佳答案

很遗憾,使用 XML 定义 GradientDrawable 不允许超过三种颜色。

看看官方引用:http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html .

例子:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#474946"
android:centerColor="#ff0000"
android:endColor="#181818"
android:angle="270"/>
<corners android:radius="5dp" />
</shape>

因此,在您的情况下,您可以使用 android:CenterColor 添加一种颜色。但是对于超过三种颜色,您甚至需要使用 Java 来完成。

关于Android 线性渐变 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5300693/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com