it-swarm.com.de

Ringform in android

Ich habe die folgenden xml in Zeichenordner (circle_status.xml) um einen Ring zu erstellen:

<?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>

Und fügen Sie die Zeichenfläche wie einen Hintergrund eines relativen Layouts ein, wie folgt:

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

Das Problem ist, im relativeLayout erscheint ein Kreis kein Ring.

32
suanido

Ich antworte mir.

Es scheint, dass das Problem im grafischen Layout-Editor von Eclipse liegt und der Code in einem realen Gerät einwandfrei funktioniert.

22
suanido

Beachten Sie, dass ein Ring ein Oval ohne Füllung ist. Nur mit einem Schlaganfall. Und die Aussicht, die es hält, sollte ein perfektes Quadrat sein.

<shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:shape="oval">

<stroke
    Android:width="1dp"
    Android:color="@color/blue" />
</shape>

Und die Aussicht hält es

<ImageView
     Android:layout_width="10dp"
     Android:layout_height="10dp"
     Android:src="@drawable/ring" />
26
Reinherd

Dieser Hack zeigt einen Ring auf beiden Geräten und 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>
9
snodnipper

Du musst benutzen <stroke> Tag anstelle von <solid> Tag für Klingeln in einem <shape> Etikett. Mit <solid> Tag in einem <shape> tag ergibt einen Kreis, keinen Ring.

<solid> Tag kann für die Hintergrundfarbe des Rings verwendet werden und <stroke> für Ringkörperfarbe.

5
Bahman