2017-04-10 3 views
0

Ich muss ein Bild für meine Kamera-App erstellen. Ich erstelle einen Kreis in einem anderen Kreis es sieht gut aus, wenn ich es auf Android-Studio sehe, aber wenn es auf einem echten Gerät laufen, war es nicht das gleiche wie es ist. Hier ist das Bild von beiden ersten von echten Gerät und zweiten von Android Studio.Erstellen Sie einen Kreis in einem anderen Kreis in Android

image from real device Circle inside circle

Hier ist mein Code, dass ich es schaffen werde verwenden.

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<!-- Larger circle in white--> 
<item> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shape="oval"> 
     <padding android:top="5dp" android:bottom="5dp" android:right="5dp" android:left="5dp"/> 
     <stroke 
      android:width="1dp" 
      android:color="#ffffff"/> 
    </shape> 
</item> 
<!-- Smaller white circle in front --> 
<item> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shape="oval"> 
     <solid 
      android:color="#ffffff"/> 
    </shape> 
</item> 
</layer-list> 

Was ist das Problem, warum es anders zeigt.

+0

Mögliches Duplikat von [Wie zeichne ich einen Kreis innerhalb eines Kreises mit Android xml shapes?] (Http://stackoverflow.com/questions/21613308/how-to-draw-a-circle-inside-a-circle-) using-android-xml-shapes) –

Antwort

2

Alles scheint gut, nur Größe hinzufügen Eigenschaft. Hoffnung danach wird es für Sie arbeiten.

<size android:height="40dp" android:width="40dp"/> 

Beispiel:

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 

<item> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android" 
      android:shape="oval"> 
     <size android:height="40dp" android:width="40dp"/> 
     <padding android:top="5dp" android:bottom="5dp" android:right="5dp" android:left="5dp"/> 
     <stroke 
      android:width="1dp" 
      android:color="#ffffff"/> 
    </shape> 
</item> 

<item> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shape="oval"> 
    <size android:height="40dp" android:width="40dp"/> 
    <solid 
     android:color="#ffffff"/> 
</shape> 
</item> 
</layer-list> 

I 40dp als Größe der Breite und der Höhe verwendet. Sie können es gemäß Ihrer Anforderung ändern.

+0

Wäre schön, wenn Sie die ursprüngliche Antwort gutgeschrieben, anstatt zu kopieren/einfügen http://stackoverflow.com/questions/21613308/how-to-draw-a-circle-inside-a- circle-using-android-xml-shapes/27569549 # 27569549 –

+0

@SeanBarbeau Seine Kopie nicht kopieren, seine Änderung in der Lösung in Frage gestellt. :) –

+0

@GaneshKatikar was ist die beste Art, Formen zu erstellen oder Bild für diesen Fall zu laden. –

0

Ich denke es liegt daran, dass das Betriebssystem Ihres Geräts keine Attribute wie "android: top" "android: bottom" unterstützt.