以编程方式创建径向渐变

我试图以编程方式重现以下渐变。

    

如何以编程方式设置参数? 谢谢

  android:centerY="45%" 

http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html

要设置该特定参数(我假设一个centerX值,因为你没有指定一个):

 yourGradientDrawable.setGradientCenter(1.0f, 0.45f); 

所以以编程方式创建上面的渐变(除了不同的颜色):

 GradientDrawable g = new GradientDrawable(Orientation.TL_BR, new int[] { getResources().getColor(R.color.startcolor), Color.rgb(255, 0, 0), Color.BLUE }); g.setGradientType(GradientDrawable.RADIAL_GRADIENT); g.setGradientRadius(140.0f); g.setGradientCenter(0.0f, 0.45f); 

注意:径向渐变将忽略方向,但对于采用颜色的构造函数则需要方向。