Android 中的椭圆渐变

Bud*_*ddy 5 xml android gradient view

您可以使用以下代码生成圆形渐变:

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

    <gradient
        android:centerColor="#c1c1c1"
        android:endColor="#4f4f4f"
        android:gradientRadius="400"
        android:startColor="#c1c1c1"
        android:type="radial" >
    </gradient>
   
</shape>
Run Code Online (Sandbox Code Playgroud)

但是如何在 Android 中绘制椭圆渐变呢?即X和Y的半径不同?

Ted*_*opp 0

您应该能够将渐变可绘制对象包装在具有不等宽度和高度缩放的缩放可绘制对象内,以获得不同 X 和 y 半径的效果:

<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/gradientShape"
    android:scaleGravity="center_vertical|center_horizontal"
    android:scaleHeight="80%"
    android:scaleWidth="100%" />
Run Code Online (Sandbox Code Playgroud)