package com.andbase.demo.activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.view.View; import android.widget.TextView; import com.ab.activity.AbActivity; import com.ab.view.progress.AbCircleProgressBar; import com.ab.view.titlebar.AbTitleBar; import com.andbase.R; import com.andbase.global.Constant; import com.andbase.global.MyApplication; /** * * © 2012 amsoft.cn * 名称:ProgressBarCircleActivity.java * 描述:环形进度条 * @author 还如一梦中 * @date:2013-9-22 下午4:52:06 * @version v1.0 */ public class ProgressBarCircleActivity extends AbActivity { private String TAG = "MainActivity"; private static final boolean D = Constant.DEBUG; private MyApplication application; // ProgressBar进度控制 private AbCircleProgressBar mAbProgressBar; // 最大100 private int max = 100; private int progress = 0; private TextView numberText, maxText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setAbContentView(R.layout.progress_bar_circle); application = (MyApplication) abApplication; AbTitleBar mAbTitleBar = this.getTitleBar(); mAbTitleBar.setTitleText(R.string.progressbar_circle_name); mAbTitleBar.setLogo(R.drawable.button_selector_back); mAbTitleBar.setTitleBarBackground(R.drawable.top_bg); mAbTitleBar.setTitleTextMargin(10, 0, 0, 0); mAbTitleBar.setLogoLine(R.drawable.line); // ProgressBar进度控制 mAbProgressBar = (AbCircleProgressBar) findViewById(R.id.circleProgressBar); numberText = (TextView) findViewById(R.id.numberText); maxText = (TextView) findViewById(R.id.maxText); maxText.setText("总共 "+String.valueOf(max)); mAbProgressBar.setMax(max); mAbProgressBar.setProgress(progress); mAbTitleBar.getLogoView().setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); startAddProgress(); mAbProgressBar.setAbOnProgressListener(new AbCircleProgressBar.AbOnProgressListener() { @Override public void onProgress(int progress) { } @Override public void onComplete() { progress = 0; mAbProgressBar.reset(); } }); } public void startAddProgress() { progress = progress+10; numberText.setText(String.valueOf(progress)); mAbProgressBar.setProgress(progress); mUpdateHandler.sendEmptyMessageDelayed(1, 1000); } private Handler mUpdateHandler = new Handler() { public void handleMessage(Message msg) { switch (msg.what) { case 1: startAddProgress(); break; } super.handleMessage(msg); } }; private Runnable mUpdateRunnable = new Runnable() { public void run() { while (true) { Message message = new Message(); message.what = 1; mUpdateHandler.sendMessage(message); try { // 更新间隔毫秒数 Thread.sleep(200); } catch (InterruptedException e) { Thread.currentThread().interrupt(); } } } }; }