圆形进度条
第一步:
compile 'com.czp.arcProgressBar:ArcProgressBar:1.0.1'
第二步:
<com.czp.library.ArcProgress android:id="@+id/myProgress" android:layout_width="wrap_content" android:layout_height="wrap_content" app:degree="0" app:progressStyle="arc" />
第三步:
public class MainActivity extends AppCompatActivity { ArcProgress mProgress; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //找控件 mProgress = (ArcProgress) findViewById(R.id.myProgress); //默认实现的类 //new OnTextcenter 初始化 文字颜色和文字大小 mProgress.setOnCenterDraw(new OnTextCenter(Color.BLUE, 30)); addProrgress(mProgress); } //开启线程的方法 public void addProrgress(ArcProgress progressBar) { Thread thread = new Thread(new ProgressThread(progressBar)); thread.start(); } //更新UI Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); ArcProgress progressBar = (ArcProgress) msg.obj; progressBar.setProgress(msg.what); } }; //子线程 class ProgressThread implements Runnable { int i = 0; private ArcProgress progressBar; public ProgressThread(ArcProgress progressBar) { this.progressBar = progressBar; } @Override public void run() { for (; i <= 100; i++) { //判断结束 if (isFinishing()) { break; } //实例化消息对象 Message msg = new Message(); msg.what = i; // Log.e("DEMO","i == "+i); //发送进度条的进度 msg.obj = progressBar; //系统时钟 睡 100 毫秒 SystemClock.sleep(100); handler.sendMessage(msg); } } } }