Android利用drawable-xml自定义实心圆和空心圆
一、空心圆
在drawble文件夹新建circle_shape.xml的文件:
配置一个线段宽度为2dp、颜色为红色、大小为10dp的空心圆
<shape android:shape="oval">
<stroke android:width="2dp" android:color="#f00"/>
<size android:height="10dp" android:width="10dp" />
</shape>
如果你的View是宽高相等,就是圆形,即长宽要有值,不能为wrap_content
将TextView的背景设置为空心圆:
<TextView
android:layout_width="150dp"
android:layout_height="150dp"
android:gravity="center"
android:background="@drawable/circle_shape"
android:text="@string/hello_world" />
二、实心圆
新建一个实心圆的xml,配置一个线段宽度为2dp、颜色为红色、大小为10dp的实心圆
<shape android:shape="oval">
<solid android:width="2dp" android:color="#0f0"/>
<size android:height="10dp" android:width="10dp" />
</shape>
如果你的View是宽高相等,就是圆形,即长宽要有值,不能为wrap_content
将TextView的背景设置为实心圆如上面代码。
三、拓展:
空心圆和实心圆的区别其实就在于画笔的不同,区别如下:
- stroke:用笔画,也可以翻译成轮廓,可以画空心的,代码中表示为:Paint.Style.STROKE。
- solid:固体的,实体的。 也就是实心的,代码表示为:Paint.Style.FILL。