2013-03-25 3 views
6

Ich versuche, ein dünnen, blauen Fortschrittsbalken, ähnlich wie diese zu erstellen: mit Drawables,dünne blaue Fortschrittsbalken

enter image description here

Ich bin nicht so gut, aber was ich verändert habe die ProgressBar zu grün, aber ich bin nicht sicher, wie es zu machen, dünn und blau:

<?xml version="1.0" encoding="UTF-8"?> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" 
    > 
     <ProgressBar 
     android:id="@+id/ProgressBar" 
     android:layout_centerInParent="true" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:progressDrawable="@drawable/progress" 
     style="@android:style/Widget.ProgressBar.Horizontal" 
     android:visibility="gone" 
    /> 

</LinearLayout> 

Drawable

<?xml version="1.0" encoding="utf-8"?> 

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 

    <item android:id="@android:id/background"> 
     <shape> 
      <corners android:radius="5dip" /> 
      <gradient 
        android:startColor="#ff9d9e9d" 
        android:centerColor="#ff5a5d5a" 
        android:centerY="0.75" 
        android:endColor="#ff747674" 
        android:angle="270" 
      /> 
     </shape> 
    </item> 

    <item android:id="@android:id/secondaryProgress"> 
     <clip> 
      <shape> 
       <corners android:radius="5dip" /> 
       <gradient 
         android:startColor="#80ffd300" 
         android:centerColor="#80ffb600" 
         android:centerY="0.75" 
         android:endColor="#a0ffcb00" 
         android:angle="270" 
       /> 
      </shape> 
     </clip> 
    </item> 
    <item 
     android:id="@android:id/progress" 
    > 
     <clip> 
      <shape> 
       <corners 
        android:radius="5dip" /> 
       <gradient 
        android:startColor="#33FF33" 
        android:endColor="#008000" 
        android:angle="270" /> 
      </shape> 
     </clip> 
    </item> 

</layer-list> 
+0

android: layout_height = "xxdp" – TacB0sS

+0

possbile Duplikat mit: http://stackoverflow.com/questions/3950956/changing-progress -bar-farbe-mit-xml-in-android-app? rq = 1 –

+0

poste deine ergebnisse ... – TacB0sS

Antwort

6

Die Höhe wird durch das Attribut android:layout_height="wrap_content definiert. Sie könnten es beispielsweise auf 2dp setzen, um einen dünneren Fortschrittsbalken zu erstellen.

Das Ändern der Farbe wird etwas schwieriger, da Sie Farbverläufe verwenden. Sie müssen also Ihre Startfarbe & in eine Art Blau ändern.

Was ich bin mit

<ProgressBar 
    android:id="@+id/progressbar" 
    style="?android:attr/progressBarStyleHorizontal" 
    android:layout_width="match_parent" 
    android:layout_height="4dp" 
    android:layout_marginTop="0.01dp" 
    android:max="100" 
    android:progress="50" 
    android:progressDrawable="@drawable/myprogressbar" 
    android:secondaryProgress="0" /> 

MyProgressBar.xml im ziehbar Ordner

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:id="@android:id/background"> 
     <shape> 
      <corners android:radius="0dip" /> 
      <gradient android:startColor="#C0C0C0" android:centerColor="#F8F8FF" 
       android:centerY="0.75" android:endColor="#ffffff" android:angle="90" /> 
      <stroke android:width="0.01dp" android:color="#6B8E23" /> 
     </shape> 
    </item> 
    <item android:id="@android:id/progress"> 
     <clip> 
      <shape> 
       <corners android:radius="0dip" /> 
       <gradient android:startColor="#9ACD32" android:endColor="#FFFF00" 
        android:angle="90" /> 
       <stroke android:width="1dp" android:color="#6B8E23" /> 
      </shape> 
     </clip> 
    </item> 
</layer-list> 

Ersetzen Sie die Farbcodes mit Ihrem eigenen blauen Farbcodes:

android: startColor = "# C0C0C0" Android : CenterColor = "# F8F8FF" android: ENDCOLOR = "# ffffff"