2017-03-07 12 views
15

मैं इस प्रगति बार डिजाइन हासिल करने की कोशिश कर रहा हूँ: enter image description hereगोलाकार कोनों के साथ प्रगति पट्टी?

वर्तमान कोड रहा है कि इस निर्माण करता है:

<item android:id="@android:id/background"> 
    <shape> 
     <corners android:radius="8dp"/> 
     <solid android:color="@color/dirtyWhite"/> 
    </shape> 
</item> 

<item android:id="@android:id/progress"> 
    <clip> 
     <shape> 
      <corners android:radius="8dp"/> 
      <solid android:color="@color/colorPrimaryDark"/> 
     </shape> 
    </clip> 
</item> 

: enter image description here

इस कोड है मेरी प्रगति पट्टी:

<ProgressBar 
      android:id="@+id/activeProgress" 
      style="?android:attr/progressBarStyleHorizontal" 
      android:layout_width="300dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:progress="10" 
      android:progressDrawable="@drawable/rounded_corners_progress_bar"/> 

मैंने प्रगति के आकार को थोड़ा छोटा बनाने के लिए में परपर <size> विशेषता जोड़ने का प्रयास किया लेकिन यह काम नहीं किया। इसके अलावा, प्रगति पट्टी फ्लैट है और मैं डिजाइन के अनुसार घुमावदार होना चाहता हूं। डिजाइन को प्राप्त करने के लिए मुझे क्या बदलने की ज़रूरत है?

+1

https://github.com/akexorcist/Android-RoundCornerProgressBar –

उत्तर

31

प्रगति आकार को थोड़ा छोटा कैसे बनाया जाए?

आप प्रगति आइटम एक छोटे से गद्दी, इसलिए की तरह देने के लिए की जरूरत है:

<item android:id="@android:id/progress" 
    android:top="2dp" 
    android:bottom="2dp" 
    android:left="2dp" 
    android:right="2dp"> 

प्रगति बार डिजाइन के अनुसार घुमावदार होने के लिए कैसे बनाने के लिए?

<clip></clip> तत्व <scale android:scaleWidth="100%"></scale> के साथ बदलें। इससे आकार बढ़ता जा रहा है क्योंकि यह बढ़ता है - और कट नहीं होता है। दुर्भाग्य से, शुरुआत में इसका थोड़ा अवांछित दृश्य प्रभाव होगा - क्योंकि आकार के कोनों में आकर्षित करने के लिए पर्याप्त जगह नहीं है। लेकिन ज्यादातर मामलों के लिए यह काफी अच्छा हो सकता है।

पूर्ण कोड:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:id="@android:id/background"> 
    <shape> 
     <corners android:radius="8dp"/> 
     <solid android:color="@color/dirtyWhite"/> 
    </shape> 
</item> 

<item android:id="@android:id/progress" 
    android:top="1dp" 
    android:bottom="1dp" 
    android:left="1dp" 
    android:right="1dp"> 

    <scale android:scaleWidth="100%"> 
     <shape> 
      <corners android:radius="8dp"/> 
      <solid android:color="@color/colorPrimaryDark"/> 
     </shape> 
    </scale> 
</item> 
</layer-list> 
+0

अपने जवाब के लिए धन्यवाद। हालांकि, जब मैंने आपके सुझाव लागू किए। पूरी प्रगति पट्टी को मेरे मुख्य रंग (रंगप्रिमरी डार्क) के साथ रंग मिला है, हालांकि प्रगति विशेषता 10% तक सेट है, यह नहीं पता कि ऐसा क्यों हुआ। मैंने प्रगति बार कोड के साथ भी अपना जवाब संपादित किया। –

+1

एक सेकेंड, मैं फिक्स के साथ अपडेट करूंगा :) –

+0

धन्यवाद! यह प्रगति पट्टी वक्र प्रभाव प्राप्त करता है। हालांकि, जब मैं आपके सुझावों को लागू करता हूं तो पूरी प्रगति पट्टी भर जाती है क्योंकि यह 100% प्रगति पर सेट होती है। क्या आप जानते हैं कि इसका क्या कारण है? धन्यवाद! –

संबंधित मुद्दे