2016-06-28 8 views
2

mit Was ich tat .. eine gebogene Linie wie ein Bogen in Android Erstellen von XML in ziehbar

<item> 
    <rotate 
     android:fromDegrees="40" 
     android:toDegrees="20" 
     android:pivotX="25%" 
     android:pivotY="50%" > 
     <shape 
      android:shape="line" 
      android:top="1dip" > 
      <stroke 
       android:width="1dip" 
       android:color="#FF0000" /> 
     </shape> 
    </rotate> 
</item> 

Es dreht sich aber nicht verbiegen. Es muss gebogen werden, um einen Bogen wie Form zu bilden

Irgendeine Idee?

+0

Einfach fragen Hast du dieses Problem gelöst? Ich mache dem Exat das gleiche Problem! :) – Ivan

+0

Ich habe ein Bild stattdessen verwendet..quick und einfach..didnot es nicht weiter versuchen, wenn Sie eine Lösung finden, bitte post es – johnrao07

+0

Ich versuche, es programmgesteuert zu tun, mit einer ArcShape – Ivan

Antwort

1

Sie können eine ring Form zeichnen, drehen Sie es nach Ihren Vorlieben und verwenden Sie es mit ProgressBar als progressDrawable mit einem festgelegten Fortschritt.

drawable.xml

<?xml version="1.0" encoding="utf-8"?> 
<rotate 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromDegrees="150" 
    android:toDegrees="150"> 

    <shape 
     android:shape="ring" 
     android:thickness="10dp" 
     android:innerRadius="20dp" 
     android:useLevel="true"><!-- this line fixes the issue for lollipop api 21 --> 

     <solid android:color="@color/colorPrimary"/> 

    </shape> 
</rotate> 

layout.xml

<ProgressBar 
    style="?android:attr/progressBarStyleHorizontal" 
    android:layout_width="120dp" 
    android:layout_height="120dp" 
    android:progressDrawable="@drawable/widget_arc" 
    android:indeterminate="false" 
    android:max="100" 
    android:progress="67" 
    /> 

Sie den Fortschritt einstellen dinamically und auch leicht zu animieren

* Verwenden Dimen res Werte