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" />