Android 尝试将自定义形状设置为小部件的背景时出错

Android 尝试将自定义形状设置为小部件的背景时出错,android,drawable,shape,Android,Drawable,Shape,我想将Android项目中标准TextView的背景设置为自定义形状。形状定义如下: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <gradient android:type="radial" a

我想将Android项目中标准
TextView
的背景设置为自定义形状。形状定义如下:

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

    <gradient android:type="radial"
              android:angle="90"
              android:startColor="#FF1EFFFF"
              android:endColor="#B01E90FF"
              android:centerColor="#201E90FF"
              android:centerX="0.5"
              android:centerY="1.0" />

</shape>
但是,当我在真实设备或Android Emulator上部署此项目时,它不会启动,并显示此错误:

ERROR/AndroidRuntime(4399):java.lang.RuntimeException:无法启动活动组件信息{org.android.gradienttest/org.android.gradienttest.MainActivity}:android.view.InflateException:二进制XML文件行#7:错误膨胀类

尝试通过首先将其作为形状来设置可绘制形状会导致相同的错误。 把它做成一个形状,我的意思是:

Resources res = getResources();
Shape shape = res.getDrawable(R.drawable.gradient);

但正如我所说,这会导致同样的错误。。。我知道当我尝试加载形状时会出现错误,但问题是我不知道为什么。。。有谁能在这件事上给我点帮助吗?这一定是一个小错误,因为没有那么多代码涉及…

似乎我忘记了向XML文件添加属性。该属性是android:gradientRadius=“180”。通过添加此属性,可以正确绘制渐变。谢谢用户639183

似乎我忘了向XML文件添加属性。该属性是android:gradientRadius=“180”。通过添加此属性,可以正确绘制渐变。谢谢用户639183

CenterX和centerY应该是整数。有一个很好的所有参数的列表。

CenterX和centerY应该是整数。有一个很好的所有参数的列表。

抛出的异常表示xml错误,在第7行有错误,请确保正确使用了gradient的属性。我想我有,但我会再次检查它们……抛出的异常表示xml错误,在第7行有错误,请确保您正确使用了gradient的属性。我想我已经使用了,但我会再次检查它们……可能是这样,但在页面下方的示例中,它们指定您必须使用0-1.0(浮动)之间的数字。此外,我使用该页面开始…我实际上看了几秒钟,认为“糟糕的Android开发人员…”可能是这样,但在页面下方的示例中,他们指定必须使用0-1.0(浮动)之间的数字。此外,我用那个页面开始…我实际上看了几秒钟,觉得“糟糕的Android开发者…”
Resources res = getResources();
Shape shape = res.getDrawable(R.drawable.gradient);