본문 바로가기

안드로이드 스튜디오

[안드로이드 스튜디오 코틀린] ProgressBar 색상 설정

728x90
반응형

 

 

 

 

 

 

 

 

 

 

 

기본 progressbar xml을 아래와 같이 만들어 실행하면

 

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <ProgressBar
        android:id="@+id/progressbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

 

 

 

 

 

 

 

 

 

이렇게 기본 progress 색상이 나타난다.

 

 

 

 

 

 

 

 

 

 

 

android:progressTint="@color/green"

이렇게 줘도 변하지 않고

 

 

 

 

 

 

android:progressBackgroundTint="@color/green"

이렇게 줘도 변하지 않는다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

그럴 때, 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

이렇게 두 줄을 추가해 주면 

 

val progressColor = resources.getColor(R.color.green, null)
binding.progressbar.indeterminateDrawable.setColorFilter(progressColor, android.graphics.PorterDuff.Mode.SRC_IN)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

이렇게 잘 변하는 것을 볼 수 있다.

728x90
반응형