วิธีเปลี่ยนสีตัวบ่งชี้ความคืบหน้าของ ProgressBar ใน Android


178

ฉันได้ตั้งแนวนอน ProgressBarฉันได้ตั้งแนวนอน

ฉันต้องการเปลี่ยนสีของความคืบหน้าเป็นสีเหลือง

<ProgressBar 
    android:id="@+id/progressbar" 
    android:layout_width="80dip" 
    android:layout_height="20dip"  
    android:focusable="false" 
    style="?android:attr/progressBarStyleHorizontal" />

ปัญหาคือสีความคืบหน้าแตกต่างกันในอุปกรณ์ที่แตกต่างกัน ดังนั้นฉันต้องการให้แก้ไขสีความคืบหน้า


คำตอบข้างต้นเปลี่ยนสีพื้นหลังทั้งหมดและเป็นความกำกวมที่จะเปลี่ยนความสูงของแถบความคืบหน้าเป็นสูงสุดมากซึ่งไม่สามารถเปลี่ยนเป็น xml ได้ วิธีที่ดีกว่าในการเปลี่ยนเฉพาะสถานะแถบความคืบหน้าซึ่งมีค่าเท่าไรคือสีแดง 20%, 50% สีเหลือง 70% และสูงกว่าสีเขียว คุณสามารถทำได้โดยใช้โปรแกรมในจาวา แบ่งปันคำตอบของคุณหากคุณมีทางออกอื่น
Mubashar

คำตอบ:


365

ฉันคัดลอกสิ่งนี้จากหนึ่งในแอพของฉันดังนั้นจึงมีคุณสมบัติพิเศษบางประการ แต่ควรให้แนวคิดแก่คุณ นี่คือจากเค้าโครงที่มีแถบความคืบหน้า:

<ProgressBar
    android:id="@+id/ProgressBar"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:indeterminate="false"
    android:maxHeight="10dip"
    android:minHeight="10dip"
    android:progress="50"
    android:progressDrawable="@drawable/greenprogress" />

จากนั้นสร้าง drawable ใหม่ด้วยสิ่งที่คล้ายกับต่อไปนี้ (ในกรณีนี้greenprogress.xml):

<?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:angle="270"
                android:centerColor="#ff5a5d5a"
                android:centerY="0.75"
                android:endColor="#ff747674"
                android:startColor="#ff9d9e9d" />
        </shape>
    </item>

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

</layer-list>

คุณสามารถเปลี่ยนสีได้ตามต้องการซึ่งจะทำให้คุณมีแถบความคืบหน้าสีเขียว


และฉันยังลบ android นี้: indeterminate = "false"
Nishant Shah เมื่อ

2
โปรดช่วยฉันด้วย ฉันพยายามสร้าง greenprogress.xml โดยคัดลอกรหัสของคุณ แต่ Android Studio 0.4.6 ทำเครื่องหมาย <layer-list> ในฐานะและข้อผิดพลาด "องค์ประกอบรายการต้องประกาศ" ฉันควรทำอย่างไร
อุมนุสรณ์

1
เป็นไปได้ไหมที่จะเปลี่ยนสีแบบไดนามิก?
async

สามารถเปลี่ยนสีได้ขึ้นอยู่กับค่าความคืบหน้าปัจจุบันที่กำหนดในแถบที่เกิดขึ้นจริง?
Jonathan

@Ryan มันจะเป็นประโยชน์ในการอธิบายสิ่งที่android:id="@android:id/progress", android:id="@android:id/background"และandroid:id="@android:id/secondaryProgress"ยืน
RustamG

103

ทางออกที่ง่ายกว่า:

progess_drawable_blue

<?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>
        <solid
                android:color="@color/disabled" />
    </shape>
</item>

<item
    android:id="@android:id/progress">
    <clip>
        <shape>
            <solid
                android:color="@color/blue" />
        </shape>
    </clip>
</item>

</layer-list>

1
ที่นี่ @ color / disabled เป็นสีที่กำหนดเอง
Nitin Saxena

2
หรือ <solid android: color = "@ android: color / black" />, หรือแม้แต่ <solid android: color = "# ff33b5e5" />
superarts.org

2
นี่เป็นหุ่นยนต์ที่เพียงพอ: indeterminateTint = "@ color / white" สำหรับ API lever 21 ขึ้นไป
Ghanshyam Nayma

53

values/styles.xmlเพียงแค่สร้างสไตล์ใน

<style name="ProgressBarStyle">
    <item name="colorAccent">@color/greenLight</item>
</style>

จากนั้นตั้งค่าสไตล์นี้เป็นProgressBarธีมของคุณ

<ProgressBar
    android:theme="@style/ProgressBarStyle"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

และไม่สำคัญว่าแถบความคืบหน้าของคุณจะเป็นแนวนอนหรือวงกลม นั่นคือทั้งหมดที่


1
ว้าวทางออกที่ง่ายที่สุดใช้ได้สำหรับฉัน ฉันสงสัยว่าทำไมคำตอบนี้มีคะแนนโหวตมากมาย
Pavel Shorokhov

38

หากคุณต้องการเปลี่ยนสีแถบความคืบหน้าคุณสามารถใช้ตัวกรองสีในวิธีการ onCreate () ของกิจกรรม:

ProgressBar progressbar = (ProgressBar) findViewById(R.id.progressbar);
int color = 0xFF00FF00;
progressbar.getIndeterminateDrawable().setColorFilter(color, PorterDuff.Mode.SRC_IN);
progressbar.getProgressDrawable().setColorFilter(color, PorterDuff.Mode.SRC_IN);

ความคิดจากที่นี่

คุณจะต้องทำสิ่งนี้สำหรับรุ่นก่อนอมยิ้ม บน Lollipop คุณสามารถใช้แอตทริบิวต์ colorAccent


สำหรับSeekBarมันจะเหมือนกันเพียงแค่เพิ่มสำหรับ API seekBar.getThumb().setColorFilter(color, PorterDuff.Mode.SRC_IN);16: นี่จะเปลี่ยนสีของนิ้วโป้งรอบนั้น
Sufian

1
การเรียกsetColorFilter()ใช้ drawable โดยตรงจะใช้สีทุกที่ เนื่องจากนี่คือสิ่งที่ฉันไม่ต้องการฉันจึงโทรmutate()ไปที่Drawable(เช่นseekBar.getThumb().mutate().setColorFilter(color, PorterDuff.Mode.SRC_IN);
Sufian

3
ฉันได้เห็นวิธีแก้ปัญหานี้ที่อื่น แต่สิ่งที่มันทำ (การทดสอบอุปกรณ์ Gingerbread) คือการเปลี่ยนแถบความคืบหน้าทั้งหมดที่สีเดียวทำให้ไม่เห็นความคืบหน้าจริง
Neil C. Obremski

@ NeilC.Obremski ใช่คุณพูดถูก อาจเป็น ROM เฉพาะหรืออาจเฉพาะรุ่น ฉันต้องลบมันออกไปโดยสิ้นเชิง หวังว่าเราจะส่งเรื่องนี้กลับไปเป็น Android เวอร์ชันเก่าเร็ว ๆ นี้ (ผ่านทาง lib การสนับสนุน)
Sufian

25

สำหรับ API ระดับ 21 ขึ้นไปเพียงใช้

android:progressBackgroundTint="@color/yourBackgroundColor"
android:progressTint="@color/yourColor"

6

มี 3 วิธีในการแก้คำถามนี้:

  1. วิธีการปรับสีแถบความคืบหน้าอย่างชัดเจน
  2. วิธีการปรับสีแถบความคืบหน้าโดยทางโปรแกรม แต่เลือกสีจากสีที่กำหนดไว้ล่วงหน้าต่างๆที่ประกาศไว้ก่อนเวลาคอมไพล์
  3. วิธีการปรับสีแถบความคืบหน้าโดยทางโปรแกรมและสร้างสีแบบเป็นโปรแกรม

โดยเฉพาะอย่างยิ่งมีความสับสนมากมายรอบ # 2 และ # 3 ตามที่เห็นในความคิดเห็นต่อคำตอบของ amfcosta คำตอบนั้นจะให้ผลลัพธ์สีที่ไม่สามารถคาดเดาได้ตลอดเวลาที่คุณต้องการตั้งค่าแถบความก้าวหน้าเป็นอะไรก็ได้ยกเว้นสีหลักเนื่องจากจะปรับเปลี่ยนสีพื้นหลังเท่านั้นและพื้นที่ "คลิป" แถบความคืบหน้าจริงจะยังคงเป็นสีเหลืองทับซ้อน ตัวอย่างเช่นการใช้วิธีการตั้งค่าพื้นหลังเป็นสีม่วงเข้มจะส่งผลให้แถบความคืบหน้า "คลิป" สีของสีชมพูบ้าบางอย่างที่เกิดจากการผสมสีม่วงเข้มและสีเหลืองผ่านอัลฟาลดลง

ดังนั้นไรก็ตาม # 1 ได้รับคำตอบอย่างสมบูรณ์แบบโดย Ryan และ arktarke ตอบคำถามส่วนใหญ่ใน # 3 แต่สำหรับผู้ที่กำลังมองหาโซลูชันที่สมบูรณ์สำหรับ # 2 และ # 3:


วิธีการปรับสีแถบความคืบหน้าโดยทางโปรแกรม แต่เลือกสีจากสีที่กำหนดไว้ล่วงหน้าที่ประกาศใน XML

res / drawable / my_progressbar.xml :

สร้างไฟล์นี้ แต่เปลี่ยนสีใน my_progress และ my_secondsProgress:

(หมายเหตุ: นี่เป็นเพียงสำเนาของไฟล์ XML จริง ๆ ที่กำหนดค่าเริ่มต้นของ Android SDK ProgressBar แต่ฉันได้เปลี่ยน ID และสีต้นฉบับมีชื่อว่า progress_horizontal)

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

<item android:id="@+id/my_progress_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="@+id/my_secondaryProgress">
    <clip>
        <shape>
            <corners android:radius="5dip" />
            <gradient
                android:startColor="#80ff171d"
                android:centerColor="#80ff1315"
                android:centerY="0.75"
                android:endColor="#a0ff0208"
                android:angle="270"
                />
        </shape>
    </clip>
</item>

<item android:id="@+id/my_progress">
    <clip>
        <shape>
            <corners android:radius="5dip" />
            <gradient
                android:startColor="#7d2afdff"
                android:centerColor="#ff2afdff"
                android:centerY="0.75"
                android:endColor="#ff22b9ba"
                android:angle="270"
                />
        </shape>
    </clip>
</item>

ใน Java ของคุณ :

final Drawable drawable;
int sdk = android.os.Build.VERSION.SDK_INT;
    if(sdk < 16) {
        drawable =  ctx.getResources().getDrawable(R.drawable.my_progressbar);
    } else {
        drawable = ContextCompat.getDrawable(ctx, R.drawable.my_progressbar);
    }
progressBar.setProgressDrawable(drawable)

วิธีการปรับสีแถบความคืบหน้าโดยทางโปรแกรมและสร้างสีแบบเป็นโปรแกรม

แก้ไข:ฉันพบเวลาที่จะแก้ไขปัญหานี้อย่างถูกต้อง คำตอบเดิมของฉันทำให้มันคลุมเครือเล็กน้อย

ProgressBar ประกอบด้วย 3 Drawables ใน LayerDrawable

  1. Layer 1 เป็นพื้นหลัง
  2. Layer 2 เป็นสีรองความคืบหน้า
  3. เลเยอร์ 3 เป็นสีแถบความคืบหน้าหลัก

ในตัวอย่างด้านล่างฉันจะเปลี่ยนสีของแถบความคืบหน้าหลักเป็นสีฟ้า

//Create new ClipDrawable to replace the old one
float pxCornerRadius = viewUtils.convertDpToPixel(5);
final float[] roundedCorners = new float[] { pxCornerRadius, pxCornerRadius, pxCornerRadius, pxCornerRadius, pxCornerRadius, pxCornerRadius, pxCornerRadius, pxCornerRadius };
ShapeDrawable shpDrawable = new ShapeDrawable(new RoundRectShape(roundedCorners, null, null));
shpDrawable.getPaint().setColor(Color.CYAN);
final ClipDrawable newProgressClip = new ClipDrawable(shpDrawable, Gravity.LEFT, ClipDrawable.HORIZONTAL);

//Replace the existing ClipDrawable with this new one
final LayerDrawable layers = (LayerDrawable) progressBar.getProgressDrawable();
layers.setDrawableByLayerId(R.id.my_progress, newProgressClip);

ตัวอย่างนั้นตั้งเป็นสีทึบ คุณอาจตั้งเป็นสีไล่ระดับสีโดยการแทนที่

shpDrawable.getPaint().setColor(Color.CYAN);

กับ

Shader shader = new LinearGradient(0, 0, 0, progressBar.getHeight(), Color.WHITE, Color.BLACK, Shader.TileMode.CLAMP);
shpDrawable.getPaint().setShader(shader);

ไชโย

-Lance


สิ่งที่ viewUtils ใน viewUtils.convertDpToPixel (5);
Nikos Hidalgo

1
สวัสดี @NikosHidalgo - คุณสามารถดูวิธีการเหมือนกันเกือบที่นี่: stackoverflow.com/questions/12849366/... ข้อแตกต่างคือฉันสร้างของฉันViewUtilsโดยมีการอ้างอิงถึงContextดังนั้นฉันไม่จำเป็นต้องผ่านContextเมื่อโทรconvertDpToPixel()
lance.dolan

ขอบคุณสำหรับการตอบกลับที่รวดเร็วโดยเฉพาะคำตอบที่โพสต์เมื่อนานมาแล้ว!
Nikos Hidalgo

ฮ่าฮ่าฉันต้องยืดสมองของฉันให้จำ: p
lance.dolan

4

หากคุณอยู่ในระดับ API 21 ขึ้นไปคุณสามารถใช้แอตทริบิวต์ XML เหล่านี้:

<!-- For indeterminate progress bar -->
android:indeterminateTint="@color/white"
<!-- For normal progress bar -->
android:progressTint="@color/white"

3

ทางออกที่ง่ายที่สุดที่ฉันค้นพบคือสิ่งนี้:

<item name="colorAccent">@color/white_or_any_color</item>

ใส่ด้านบนในstyles.xmlไฟล์ภายใต้res > valuesโฟลเดอร์

หมายเหตุ:หากคุณใช้สีที่เน้นเสียงสีอื่นวิธีแก้ไขปัญหาก่อนหน้านี้ก็น่าจะใช้ได้ดี

API 21 หรือสูงกว่า


นี่คือทางออกที่ดีที่สุด 100% เกี่ยวข้องกับคำถามที่ถาม ง่ายมาก
Pir Fahim Shah

3
final LayerDrawable layers = (LayerDrawable) progressBar.getProgressDrawable();
layers.getDrawable(2).setColorFilter(color,PorterDuff.Mode.SRC_IN);

1
ลองเพิ่มคำอธิบายเล็กน้อยในคำตอบของคุณ คำตอบของรหัสเท่านั้นที่จะหมดกำลังใจ
Alexei

ฉันชอบที่จะได้รับคำอธิบายหลังดัชนี 2 ใน getDrawable แต่อย่างน้อยนี่เป็นทางออกเดียวที่เหมาะกับฉันดังนั้นขอบคุณ!
Nikos Hidalgo

2

สำหรับทุกคนที่กำลังมองหาวิธีการทำโปรแกรม:

    Drawable bckgrndDr = new ColorDrawable(Color.RED);
    Drawable secProgressDr = new ColorDrawable(Color.GRAY);
    Drawable progressDr = new ScaleDrawable(new ColorDrawable(Color.BLUE), Gravity.LEFT, 1, -1);
    LayerDrawable resultDr = new LayerDrawable(new Drawable[] { bckgrndDr, secProgressDr, progressDr });
    //setting ids is important
    resultDr.setId(0, android.R.id.background);
    resultDr.setId(1, android.R.id.secondaryProgress);
    resultDr.setId(2, android.R.id.progress);

การกำหนดรหัสไปยัง drawable เป็นสิ่งสำคัญและดูแลรักษาขอบเขตและสถานะที่แท้จริงของแถบความคืบหน้า


1

พวกคุณทำให้ฉันปวดหัวจริงๆ สิ่งที่คุณสามารถทำได้คือทำให้ layer ของคุณสามารถวาดได้ผ่านทาง xml แรก (หมายถึงพื้นหลังเป็นเลเยอร์แรก, drawable ที่แสดงความคืบหน้าที่รองเป็นเลเยอร์ที่สอง, และ drawable อีกอันที่แสดงถึงความก้าวหน้าหลักเป็นเลเยอร์สุดท้าย) จากนั้นเปลี่ยน สีบนรหัสโดยทำดังต่อไปนี้:

public void setPrimaryProgressColor(int colorInstance) {
      if (progressBar.getProgressDrawable() instanceof LayerDrawable) {
        Log.d(mLogTag, "Drawable is a layer drawable");
        LayerDrawable layered = (LayerDrawable) progressBar.getProgressDrawable();
        Drawable circleDrawableExample = layered.getDrawable(<whichever is your index of android.R.id.progress>);
        circleDrawableExample.setColorFilter(colorInstance, PorterDuff.Mode.SRC_IN);
        progressBar.setProgressDrawable(layered);
    } else {
        Log.d(mLogTag, "Fallback in case it's not a LayerDrawable");
        progressBar.getProgressDrawable().setColorFilter(color, PorterDuff.Mode.SRC_IN);
    }
}

วิธีนี้จะให้ความยืดหยุ่นที่ดีที่สุดในการวัดค่า drawable ดั้งเดิมของคุณที่ประกาศบน xml โดยไม่มีการดัดแปลงโครงสร้างของ AFTERWARDS โดยเฉพาะอย่างยิ่งถ้าคุณต้องการโฟลเดอร์เฉพาะของหน้าจอไฟล์ xml จากนั้นปรับเปลี่ยนเฉพาะสีผ่านทาง รหัส. ไม่มีการสร้าง ShapeDrawable ใหม่ทันทีตั้งแต่เริ่มต้น


1

สี ProgressBar สามารถเปลี่ยนแปลงได้ดังต่อไปนี้:

/res/values/colors.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorAccent">#FF4081</color>
</resources>

/res/values/styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorAccent">@color/colorAccent</item>
</style> 

onCreate:

progressBar = (ProgressBar) findViewById(R.id.progressBar);
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
    Drawable drawable = progressBar.getIndeterminateDrawable().mutate();
    drawable.setColorFilter(ContextCompat.getColor(this, R.color.colorAccent), PorterDuff.Mode.SRC_IN);
    progressBar.setIndeterminateDrawable(drawable);
}

1

สร้างทรัพยากร drawable พื้นหลังที่คุณต้องการในกรณีของฉันฉันชื่อ bg_custom_progressbar.xml

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

<item>
    <shape android:shape="rectangle" >
        <corners android:radius="5dp"/>

        <gradient
            android:angle="180"
            android:endColor="#DADFD6"
            android:startColor="#AEB9A3" />
    </shape>
</item>
<item>
    <clip>
        <shape android:shape="rectangle" >
            <corners android:radius="5dp" />

            <gradient
                android:angle="180"
                android:endColor="#44CF4A"
                android:startColor="#2BB930" />
        </shape>
    </clip>
</item>
<item>
    <clip>
        <shape android:shape="rectangle" >
            <corners android:radius="5dp" />

            <gradient
                android:angle="180"
                android:endColor="#44CF4A"
                android:startColor="#2BB930" />
        </shape>
    </clip>
</item>

จากนั้นใช้พื้นหลังที่กำหนดเองเช่นนี้

 <ProgressBar
                android:id="@+id/progressBarBarMenuHome"
                style="?android:attr/progressBarStyleHorizontal"
                android:layout_width="match_parent"
                android:layout_height="20dp"
                android:layout_marginStart="10dp"
                android:layout_marginEnd="10dp"
                android:layout_marginBottom="6dp"
                android:indeterminate="false"
                android:max="100"
                android:minWidth="200dp"
                android:minHeight="50dp"
                android:progress="10"
                android:progressDrawable="@drawable/bg_custom_progressbar" />

มันใช้งานได้ดีสำหรับฉัน


0

ใน xml:

<ProgressBar
                    android:id="@+id/progressBar"
                    style="?android:attr/progressBarStyleInverse"
                    android:layout_width="60dp"
                    android:layout_height="60dp"
                    android:layout_margin="@dimen/dimen_10dp"


                 android:indeterminateTint="@{viewModel.getComplainStatusUpdate(position)}"
                    android:indeterminate="true"
                    android:indeterminateOnly="false"
                    android:max="100"
                    android:clickable="false"
                    android:indeterminateDrawable="@drawable/round_progress"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintTop_toTopOf="parent" />

ViewModel:

fun getComplainStatusUpdate(position: Int):Int{

                val list = myAllComplainList!!.getValue()
                if (list!!.get(position).complainStatus.equals("P")) {
                  //  progressBar.setProgressTintList(ColorStateList.valueOf(Color.RED));
                   // progressBar.setBackgroundResource(R.drawable.circle_shape)
                    return Color.RED
                } else if (list!!.get(position).complainStatus.equals("I")) {

                    return Color.GREEN
                } else {

                    return Color.GREEN
                }


return Color.CYAN
    }

0

ด้วย Material Components Library คุณสามารถใช้ProgressIndicatorกับapp:indicatorColorattribute เพื่อเปลี่ยนสี:

  <com.google.android.material.progressindicator.ProgressIndicator
      style="@style/Widget.MaterialComponents.ProgressIndicator.Linear.Determinate"
      app:indicatorColor="@color/..."
      app:indicatorWidth="..."
      app:trackColor="@color/..."
      />

ป้อนคำอธิบายรูปภาพที่นี่

หมายเหตุ : 1.3.0-alpha01จะต้องมีอย่างน้อยรุ่น

ด้วยProgressBarคุณสามารถแทนที่สีโดยใช้:

<ProgressBar
    android:theme="@style/CustomProgressBarTheme"
    ..>

ด้วย:

<style name="CustomProgressBarTheme">
    <item name="colorAccent">@color/primaryDarkColor</item>
</style>

ป้อนคำอธิบายรูปภาพที่นี่


0

หากคุณต้องการตั้งค่าสีความก้าวหน้าหลักและรองเป็นแถบความคืบหน้าในแนวนอนโดยทางโปรแกรมใน Android จากนั้นใช้ตัวอย่างด้านล่าง

int[][] states = new int[][] {
                        new int[] {-android.R.attr.state_checked},
                        new int[] {android.R.attr.state_checked},
                };

                int[] secondaryColor = new int[] {
                        context.getResources().getColor(R.color.graph_line_one),
                        Color.RED,
                };

                int[] primaryColor = new int[] {
                        context.getResources().getColor(R.color.middle_progress),
                        Color.BLUE,
                };
                progressbar.setProgressTintList(new ColorStateList(states, primaryColor));
                progressbar.setSecondaryProgressTintList(new ColorStateList(states, secondaryColor));
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.