Android进度条学习二
16lz
2021-12-21
package tw.android;import java.util.Calendar;import android.app.Activity;import android.app.ProgressDialog;import android.os.Bundle;import android.os.Handler;import android.view.View;import android.widget.Button;public class Main extends Activity { private Button mBtnProgDlg; private Handler mHandler = new Handler(); /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setupViewComponent(); } private void setupViewComponent() { mBtnProgDlg = (Button)findViewById(R.id.btnProgDlg); mBtnProgDlg.setOnClickListener(btnProgDlgOnClkLis); } private Button.OnClickListener btnProgDlgOnClkLis = new Button.OnClickListener() { public void onClick(View v) { final ProgressDialog progDlg = new ProgressDialog(Main.this); progDlg.setTitle("进度条"); progDlg.setMessage("进度..."); progDlg.setIcon(android.R.drawable.ic_dialog_info); progDlg.setCancelable(false); progDlg.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); progDlg.setMax(100); progDlg.show(); new Thread(new Runnable() { public void run() { Calendar begin = Calendar.getInstance(); do { Calendar now = Calendar.getInstance(); final int iDiffSec = 60 * (now.get(Calendar.MINUTE) - begin.get(Calendar.MINUTE)) + now.get(Calendar.SECOND) - begin.get(Calendar.SECOND); if (iDiffSec * 2 > 100) { mHandler.post(new Runnable() { public void run() { progDlg.setProgress(100); } }); break; } mHandler.post(new Runnable() { public void run() { progDlg.setProgress(iDiffSec * 2); } }); if (iDiffSec * 4 < 100) mHandler.post(new Runnable() { public void run() { progDlg.setSecondaryProgress(iDiffSec * 4); } }); else mHandler.post(new Runnable() { public void run() { progDlg.setSecondaryProgress(100); } }); } while (true); progDlg.cancel(); } }).start(); } };}
以上是ProgressDialog代码,ProgressDialog 是需要的时候才显示,工作完后就消失。
更多相关文章
- Android文件下载进度条的实现
- Android(安卓)有入场动画的Popuwindow
- Android(安卓)WindowManager 窗口泄漏的解决记录
- android之seekBar
- Android为Notification加上一个进度条
- Android(安卓)property-animation 占CPU偏高
- Android定义一个不消失的悬停通知栏
- android卸载应用的进度条
- Android(安卓)ImageLoader组件加载图片