본문 바로가기
안드로이드/개발자 일상

안드로이드 CircleProgressBar (원형 프로그래스 바, 라이브러리 사용)

by 차누감 2020. 3. 29.

상태를 표시하기 위해 원형 프로그래스바를 사용할 때가 있습니다.

해당 라이브러리 링크를 공유드립니다.

https://github.com/dinuscxj/CircleProgressBar


<실행 화면> 자신이 원할때 퍼센트 값을 주어서, 원형 프로그래스 바에 보여줄 수 있습니다.

 


원형 프로그래스 바를 사용하는 예제를 만들겠습니다.

 

라이브러리를 추가 합니다.

Gradle:

dependencies {
        implementation 'com.dinuscxj:circleprogressbar:1.3.0' // CircleProgressBar
}

activity_main.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="utf-8"?>
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
 
    <com.dinuscxj.progressbar.CircleProgressBar
        android:id="@+id/cpb_circlebar"
        android:layout_width="300dp"
        android:layout_height="300dp"
        app:progress_text_size="50sp"
        app:style="solid_line"
        app:progress_stroke_width="20dp "
        app:progress_stroke_cap="round"
        app:progress_start_color="#FFBB00"
        app:progress_end_color="#ABF200"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
 
 

MainActivity.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package com.example.ex_circleprogressbar;
 
 
 
import com.dinuscxj.progressbar.CircleProgressBar;
 
public class MainActivity extends AppCompatActivity implements CircleProgressBar.ProgressFormatter {
 
    private static final String DEFAULT_PATTERN = "%d%%";
 
    CircleProgressBar circleProgressBar;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        circleProgressBar=findViewById(R.id.cpb_circlebar);
        
        circleProgressBar.setProgress(70);  // 해당 퍼센트를 적용
        
    }// onCreate()..
 
    @Override
    public CharSequence format(int progress, int max) {
            return String.format(DEFAULT_PATTERN, (int) ((float) progress / (float) max * 100));
    }
 
}// MainActivity Class..
 
 

<실행 화면> 자신이 원할때 퍼센트 값을 주어서, 원형 프로그래스 바에 보여줄 수 있습니다.

댓글