android - 크기 - 어떻게 진행률 표시 줄의 기본 색상을 변경하려면?



유튜브 채널 정보 수정 (7)

내 Activty.My 순환 원형 ProgressBar 사용하고 있습니다. 내 페이지의 BG 색 ProgressBar 같은 때문에 내 페이지에 제대로 표시되지 않습니다. 그래서 어떻게 제대로 표시되도록 ProgressBar 색을 변경할 수 있습니까? 도와주세요


Answer #1

XML에서 이것을 사용해보십시오.

android:indeterminateDrawable="@drawable/yourxmlfile"

style="@android:style/Widget.ProgressBar.Small"

Answer #2

oncreate 또는 파편 onViewCreated ()에서 프로그래밍 방식으로 진행 바의 색상을 변경할 수도 있습니다.

pBar.getIndeterminateDrawable().setColorFilter(0xFFFF0000, android.graphics.PorterDuff.Mode.MULTIPLY);

여기서 적용된 색상은 빨간색 인 "0xFFFF0000"입니다. 필요에 따라 변경할 수 있습니다.


Answer #3

가장 쉬운 방법은 android : indeterminateTint 속성을 사용하는 것입니다.

<ProgressBar
        android:indeterminate="true"
        android:indeterminateTint="@android:color/black"
        ........... />

Answer #4

또한 속성 만 변경할 수 있습니다.

android:indeterminateDrawable="@drawable/yourxmlfile"

이 스타일 유지

style="@android:style/Widget.ProgressBar.Small"

Answer #5

여기에 약간의 설명이 있습니다. Indeterminate ProgressBar 배경을 변경하려면 회전 링이 필요하므로 회전 링이 필요합니다. @Chirag의 답변에서 그는 회전 반지를 정의하고 ProgressBar 의 배경에 적용했습니다. Horizontal ProgressBar 를 사용하는 경우 rectangle 이 필요합니다.

추신 : 다른 모양으로 시도하지 않았습니다.


Answer #6

이것은 오래된 질문이지만 주제를 사용하는 것은 여기에 언급되어 있지 않습니다. 기본 테마가 AppCompat 사용하는 경우, ProgressBar 의 색은 사용자가 정의한 colorAccent 입니다.

colorAccent 를 변경하면 ProgressBar 의 색상도 변경되지만 이러한 변경 사항은 여러 곳에서 반영됩니다. 따라서 특정 ProgressBar 대해 다른 색상을 원하면 해당 ProgressBar 에만 테마를 적용하여 ProgressBar 할 수 있습니다.

  • 기본 테마를 확장하고 colorAccent 재정의 colorAccent

    <style name="AppTheme.WhiteAccent">
        <item name="colorAccent">@color/white</item> <!-- Whatever color you want-->
    </style>
    
  • 그리고 ProgressBar 에서 android:theme 속성을 추가하십시오.

    android:theme="@style/AppTheme.WhiteAccent"
    

그러면 다음과 같이 보일 것입니다.

<ProgressBar
        android:id="@+id/loading"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:padding="10dp"
        android:theme="@style/AppTheme.WhiteAccent" />

그래서 당신은 당신의 특정 ProgressBar 대한 colorAccent 변경 colorAccent 있습니다.

참고 : style 사용은 작동하지 않습니다. android:theme 만 사용해야합니다. 테마 사용에 대한 자세한 내용은 https://plus.google.com/u/0/+AndroidDevelopers/posts/JXHKyhsWHAH 하십시오.

편집하다

다음은 프로그래밍 방식으로 ProgressBar의 색상을 변경하는 코드입니다.

ProgressBar progressBar = (ProgressBar) findViewById(R.id.pb_listProgressBar);
int colorCodeDark = Color.parseColor("#F44336");
progressBar.setIndeterminateTintList(ColorStateList.valueOf(colorCodeDark));

Answer #7

하나의 xml 파일 이름을 progress.xml로 만들고 res / xml 폴더에 넣고 아래 코드를 해당 xml 파일에 작성하십시오.

 <?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:pivotX="50%" android:pivotY="50%" android:fromDegrees="0"
    android:toDegrees="360">
    <shape android:shape="ring" android:innerRadiusRatio="3"
        android:thicknessRatio="8" android:useLevel="false">

        <size android:width="76dip" android:height="76dip" />
        <gradient android:type="sweep" android:useLevel="false"
            android:startColor="#447a29" 
            android:endColor="#447a29"
            android:angle="0"
             />
    </shape>
</rotate> 

이 xml 파일을 만든 후 progressbars 배경을이 xml로 설정합니다.

처럼

<ProgressBar
  android:id="@+id/ProgressBar01" 
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:background = "@xml/progress">




progress-bar