版权声明:橘子丶 https://blog.csdn.net/qq_43573190/article/details/85834970
xml
<com.czp.library.ArcProgress
android:id="@+id/myProgress"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="9"
android:layout_marginLeft="140dp"
android:layout_marginTop="200dp"
app:degree="0"
app:progressStyle="arc" />
MainActivity.this
package com.example.kanghuwei.zhoukao_lianxi;
import android.content.Intent;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import com.czp.library.ArcProgress;
import com.czp.library.OnTextCenter;
import com.czp.library.onImageCenter;
public class MainActivity extends AppCompatActivity {
ArcProgress mProgress,mProgress1,mProgress02,mProgress03;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mProgress = findViewById(R.id.myProgress);
mProgress.setOnCenterDraw(new OnTextCenter());
addProrgress(mProgress);
}
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
ArcProgress progressBar = (ArcProgress) msg.obj;
progressBar.setProgress(msg.what);
}
};
public void addProrgress(ArcProgress progressBar) {
Thread thread = new Thread(new ProgressThread(progressBar));
thread.start();
}
class ProgressThread implements Runnable{
int i= 0;
private ArcProgress progressBar;
public ProgressThread(ArcProgress progressBar) {
this.progressBar = progressBar;
}
@Override
public void run() {
for(i=0;i<=100;i++){
if(i == 100){
Intent intent = new Intent(MainActivity.this,ShowActivity.class);
startActivity(intent);
finish();
}
Message msg = new Message();
msg.what = i;
Log.e("DEMO","i == "+i);
msg.obj = progressBar;
SystemClock.sleep(100);
handler.sendMessage(msg);
}
}
}
}
依赖
implementation 'com.czp.arcProgressBar:ArcProgressBar:1.0.1'