android 弧形進度條和圓形擴散進度條


1.效果展示

2.導入依賴

allprojects {
    repositories {
    ...
    maven { url 'https://jitpack.io' }
    }
}
implementation 'com.github.ppg408331701:SemicircleProgress:v0.5.0'

3.相關說明

3.1. SemicircleProgress
配置參數 參數含義
semicircleSize 半弧形的半徑大小,默認100dp
semicirclebackgroundLineColor 半弧形的背景線顏色,默認灰色
semicirclefrontLineColor 半弧形的前景線顏色,默認橘黃色
semicirclelineSize 半弧形的線寬度,默認3dp
semicirclesubtitleColor 副標題字體顏色
semicirclesubtitleSize 副標題字體大小
semicirclesubtitleText 副標題文本
semicircletitleColor 標題字體顏色
semicircletitleSize 標題字體大小
semicircletitleText 標題文本
3.2. CircularProgressar
配置參數 參數含義
circularLeftText 左邊文本
circularLeftTextColor 左邊字體顏色
circularLeftTextSize 左邊字體大小
circularRightText 右邊文本
circularRightTextColor 右邊字體顏色
circularRightTextSize 右邊字體大小
circularSize 圓的大小
circularbackgroundLineColor 圓形的背景線顏色
circularfrontLineColor 圓形的前景線顏色
circularcentreBitmap 中間的顏色
circularlineSize 線的寬度
circularshowBitmap 是否顯示中間的圖片

4. 布局文件xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <simple.ppg.com.ppgsemicircle.Views.SemicircleProgressView
        android:id="@+id/semicircleProgressView"
        android:layout_width="match_parent"
        android:layout_height="150dp"
        app:semicircleSize="140dp"
        app:semicirclebackgroundLineColor="@color/colorPrimary"
        app:semicirclefrontLineColor="@color/colorAccent"
        app:semicirclelineSize="3dp"
        app:semicirclesubtitleColor="@color/colorPrimary"
        app:semicirclesubtitleSize="15sp"
        app:semicirclesubtitleText="integral"
        app:semicircletitleColor="@color/colorAccent"
        app:semicircletitleSize="20sp"
        app:semicircletitleText="積分" />
    <simple.ppg.com.ppgsemicircle.Views.CircularProgressar
        android:id="@+id/sesame_view"
        android:layout_width="270dp"
        android:layout_height="150dp"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        app:circularLeftText="50%"
        app:circularLeftTextColor="@color/colorPrimary"
        app:circularLeftTextSize="14sp"
        app:circularRightText="50/100"
        app:circularRightTextColor="@color/colorPrimary"
        app:circularRightTextSize="14sp"
        app:circularSize="120dp"
        app:circularbackgroundLineColor="@color/colorPrimary"
        app:circularcentreBitmap="@mipmap/icon_1"
        app:circularfrontLineColor="@color/colorAccent"
        app:circularlineSize="3dp"
        app:circularshowBitmap="true" />
</LinearLayout>

5. 后台Java代碼

public class MainActivity extends AppCompatActivity {


    private SemicircleProgressView semicircleProgressView;
    private CircularProgressar sesame_view;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();

        initdate();
    }

    private void initdate() {
        semicircleProgressView = (SemicircleProgressView) findViewById(R.id.semicircleProgressView);
        semicircleProgressView.setSesameValues(10, 50);

        sesame_view = (CircularProgressar) findViewById(R.id.sesame_view);
        sesame_view.setSesameValues(50, 100);//設定進度
        sesame_view.setDuration(5000);//設定波浪從最小到最大的時間
        sesame_view.setStyle(Paint.Style.FILL);//設置畫筆風格
        sesame_view.setColor(ContextCompat.getColor(this, R.color.colorAccent));//設置波浪顏色
        sesame_view.setInterpolator(new LinearOutSlowInInterpolator());//設置插值器
        sesame_view.start();//開始
        // sesame_view.stop();//緩慢停止
        // sesame_view.stopImmediately();//立刻停止
    }

    private void initView() {
        semicircleProgressView = (SemicircleProgressView) findViewById(R.id.semicircleProgressView);
        sesame_view = (CircularProgressar) findViewById(R.id.sesame_view);
    }
}
轉載來源:https://github.com/ppg408331701/SemicircleProgress


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM