2015-01-12 9 views
5

क्या इस तरह ढाल के साथ सर्कल बनाने का कोई तरीका है?एंड्रॉइड ढाल के साथ पाई डाउंट बनाएं

<shape 
     android:innerRadiusRatio="3" 
     android:thicknessRatio="10" 
     android:shape="ring"> 
    <gradient 
       android:endColor="@color/cyan_dark" 
       android:startColor="@color/red" 
       android:type="radial" 
       android:gradientRadius="340" 
       android:centerX="50%" 
       android:centerY="0" /> 
</shape> 
+0

अपने वास्तविक परिणाम क्या है (परिवर्तन रंग अपनी जरूरत के अनुसार)? – TheRedFox

उत्तर

3
:

enter image description here

जहां तक ​​मैं मिल यह है

एक्सएमएल

<ProgressBar 
     android:id="@+id/yourId" 
     style="?android:attr/progressBarStyleHorizontal" 
     android:layout_width="89dp" 
     android:layout_height="89dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:max="100" 
     android:progress="70" 
     android:progressDrawable="@drawable/shapering" /> 

shapering drawable

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:innerRadiusRatio="3" 
    android:shape="ring" 
    android:thicknessRatio="10" > 

    <gradient 
     android:centerColor="#D6DE47" 
     android:centerX="50%" 
     android:centerY="0" 
     android:endColor="#DE47A7" 
     android:gradientRadius="340" 
     android:startColor="#6D47DE" 
     android:type="sweep" /> 

</shape> 

परिणाम

enter image description here

+0

धन्यवाद, आपके रीप्ले के लिए, लेकिन मुझे 100 प्रगति में भी समर्थन करने की आवश्यकता है, जो आपके उत्तर में 100 से "पीले प्रभाव" को प्रगति में बदल देगा, दोनों तरफ प्रदर्शित होगा, –

+0

मेरा उत्तर अपडेट किया गया। –

+0

धन्यवाद! काम निर्दोष –

3

उपयोग इस

<ProgressBar 
     android:id="@+id/progressWheel" 
     style="?android:attr/progressBarStyleHorizontal" 
     android:layout_width="152dp" 
     android:layout_height="152dp" 
     android:layout_centerInParent="true" 
     android:progress="100" 
     android:indeterminate="false" 
     android:progressDrawable="@drawable/circular_progress_bar" /> 
drawable circular_progress_bar में

(परिवर्तन रंग अपनी जरूरत के अनुसार)

<?xml version="1.0" encoding="UTF-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
<item android:id="@android:id/progress"> 
    <rotate 
     android:fromDegrees="270" 
     android:toDegrees="270" 
     android:pivotX="50%" 
     android:pivotY="50%" > 
     <shape 
      android:innerRadiusRatio="2.5" 
      android:shape="ring" 
      android:thicknessRatio="25.0" > 
      <gradient 
       android:centerColor="@color/red" 
       android:endColor="@color/gray" 
       android:startColor="@color/gray" 
       android:type="sweep" /> 
     </shape> 
    </rotate> 
</item> 
<item android:id="@android:id/secondaryProgress"> 
    <rotate 
     android:fromDegrees="270" 
     android:toDegrees="270" 
     android:pivotX="50%" 
     android:pivotY="50%" > 
     <shape 
      android:innerRadiusRatio="2.5" 
      android:shape="ring" 
      android:thicknessRatio="25.0" > 
      <gradient 
       android:centerColor="@color/green" 
       android:endColor="@color/green" 
       android:startColor="@color/green" 
       android:type="sweep" /> 
     </shape> 
    </rotate> 
</item> 
</layer-list>  
1

आप type = बजाय ढाल बनाने के लिए की "रेडियल" "स्वीप" का उपयोग करना चाहिए ओ की तरह एन तस्वीर। उदाहरण के लिए:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
<item> 
    <shape 
     android:innerRadiusRatio="3" 
     android:shape="ring" 
     android:thicknessRatio="7.0"> 
     <gradient 
      android:startColor="#FF0000" 
      android:centerColor="#00FF00" 
      android:endColor="#0000FF" 
      android:type="sweep" /> 
    </shape> 
</item> 

3

उपयोग इस

<ProgressBar 
    android:id="@+id/progressWheel" 
    style="?android:attr/progressBarStyleHorizontal" 
    android:layout_width="152dp" 
    android:layout_height="152dp" 
    android:layout_centerInParent="true" 
    android:progress="100" 
    android:indeterminate="false" 
    android:progressDrawable="@drawable/circular_progress_bar" /> 
drawable circular_progress_bar में

<?xml version="1.0" encoding="UTF-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
<item android:id="@android:id/progress"> 
<rotate 
    android:fromDegrees="270" 
    android:toDegrees="270" 
    android:pivotX="50%" 
    android:pivotY="50%" > 
    <shape 
     android:innerRadiusRatio="2.5" 
     android:shape="ring" 
     android:thicknessRatio="25.0" > 
     <gradient 
      android:centerColor="@color/red" 
      android:endColor="@color/gray" 
      android:startColor="@color/gray" 
      android:type="sweep" /> 
    </shape> 
</rotate> 
</item> 
<item android:id="@android:id/secondaryProgress"> 
<rotate 
    android:fromDegrees="270" 
    android:toDegrees="270" 
    android:pivotX="50%" 
    android:pivotY="50%" > 
    <shape 
     android:innerRadiusRatio="2.5" 
     android:shape="ring" 
     android:thicknessRatio="25.0" > 
     <gradient 
      android:centerColor="@color/green" 
      android:endColor="@color/green" 
      android:startColor="@color/green" 
      android:type="sweep" /> 
    </shape> 
</rotate> 
</item> 
</layer-list>  
संबंधित मुद्दे