Android形状矩形有2种颜色

时间:2014-12-16 21:43:28

标签: java android xml

我需要制作一个自定义矩形,应该使用#bff54a 中的十六进制颜色,直到#88c010

Rectangle two colors

实际上我有这个xml,但我只能使用其中一种颜色。如何使梯度成为可能?我已经搜索过,但我没有找到这样的东西。

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >

<stroke
    android:width="1dp"
    android:color="@color/gray_light" />

<solid android:color="#88c010" />

<corners
    android:bottomLeftRadius="8dp"
    android:bottomRightRadius="8dp"
    android:topLeftRadius="8dp"
    android:topRightRadius="8dp" />

</shape>

感谢所有人!

2 个答案:

答案 0 :(得分:2)

使用渐变作为Drawable的颜色:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
  android:shape="rectangle" >

  <stroke
    android:width="1dp"
    android:color="@color/gray_light" />

  <gradient
    android:type="linear"
    android:centerX="0"
    android:centerY="1"
    android:startColor="#bff54a"
    android:endColor="#88c010" />

  <corners
    android:bottomLeftRadius="8dp"
    android:bottomRightRadius="8dp"
    android:topLeftRadius="8dp"
    android:topRightRadius="8dp" />

</shape>

请参阅Drawable Resources

答案 1 :(得分:0)

您可以创建文件形状并实现此代码

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>

        <shape xmlns:android="http://schemas.android.com/apk/res/android"
            android:shape="rectangule"> <!-- oval -->
            <gradient
                android:startColor="#388E3C"
                android:endColor="#448AFF"
                android:centerColor="@color/colorPrimary"
                />
        </shape>
    </item>
</selector>

<强>结果

enter image description here