trapezoid studio example custom android android-xml android-drawable android-shape

studio - shape size android



Forma de anillo en android (4)

Debe usar la etiqueta <stroke> lugar de la etiqueta <solid> para el anillo en una etiqueta <shape> . El uso de la etiqueta <solid> en una etiqueta <shape> da como resultado un círculo, no un anillo.

<solid> etiqueta <solid> se puede usar para el color de fondo del anillo y <stroke> para el color del cuerpo del anillo.

Tengo el siguiente xml en la carpeta circle_status.xml ( circle_status.xml ) para crear un anillo:

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="ring" android:innerRadius="15dp" android:thickness="10dp" android:useLevel="false"> <solid android:color="#ababf2" /> </shape>

E inserte el dibujo como un fondo de un relativeLayout, como sigue:

<RelativeLayout android:id="@+id/RelativeLayout_Status" android:layout_width="100dp" android:layout_height="100dp" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:background="@drawable/circle_status" > </RelativeLayout>

El problema, es en el relativoLayout, aparece un círculo no un anillo.


Este truco muestra un anillo tanto en el dispositivo como en Android Studio:

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="ring" android:innerRadius="23dp" android:thickness="0dp"> <stroke android:width="2dp" android:color="#ababf2" /> </shape>


Me contesto

Parece que el problema está en el Editor de diseño gráfico de Eclipse, el código funciona bien en un dispositivo real.


Tenga en cuenta que un anillo es un óvalo sin relleno. Sólo con un derrame cerebral. Y la vista que lo sostiene, debe ser un cuadrado perfecto.

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <stroke android:width="1dp" android:color="@color/blue" /> </shape>

Y la vista que lo sostiene.

<ImageView android:layout_width="10dp" android:layout_height="10dp" android:src="@drawable/ring" />