如何使用xml设置颜色可绘制的圆angular半径?

在android网站上,有一个关于颜色可绘制的部分 。 在xml中定义这些drawable如下所示:

<resources> <drawable name="solid_red">#f00</drawable> <drawable name="solid_blue">#0000ff</drawable> <drawable name="solid_green">#f0f0</drawable> </resources> 

在java api中,他们有下面的方法来定义圆angular:

 setCornerRadius(float radius) 

有没有办法在xml中设置圆angular?

使用<shape>标签创build带圆angular的XML的绘图。 (你也可以用形状标签来做其他事情,比如定义一个颜色渐变)。

下面是我在其中一个应用程序中使用的XML文件的副本,用于创build具有白色背景,黑色边框和圆angular的绘图工具:

 <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#ffffffff"/> <stroke android:width="3dp" android:color="#ff000000" /> <padding android:left="1dp" android:top="1dp" android:right="1dp" android:bottom="1dp" /> <corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp" android:topLeftRadius="7dp" android:topRightRadius="7dp" /> </shape> 

mbaird的答案正常工作。 请注意,在Android(至less2.1)中似乎有一个bug,如果你把任何一个angular落的半径设置为0,它会强制所有的angular落为0(至less这是“dp”单位的情况;我没有不要和其他任何单位一起尝试)。

我需要一个形状,顶angular是圆形的,底angular是方形的。 我通过将我想要的方angular设置为略大于0:0.1dp的值来实现这一点。 这仍然呈现为方形angular,但不会强制其他angular为0半径。