packagecom.example.deemo;importandroid.app.Activity;importandroid.app.ProgressDialog;importandroid.content.DialogInterface;importandroid.os.Bundle;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.view.Window;importandroid.widget.Button;importandroid.widget.ProgressBar;importandroid.widget.TextView;importandroid.widget.Toast;public class MainActivity extends Activity implementsOnClickListener {privateProgressBar progress;privateButton add;privateButton reduce;privateButton reset;privateTextView text;private ProgressDialog prodialog;//对话框进度条初始化
privateButton show;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//启用窗口特征,启用带进度和不带进度的
requestWindowFeature(Window.FEATURE_PROGRESS);
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setContentView(R.layout.main);//显示两种进度条
setProgressBarVisibility(true);
setProgressBarIndeterminateVisibility(false);
setProgress(9999);//直进度条进度,最大量为10000
init();
}private voidinit() {
progress=(ProgressBar) findViewById(R.id.horiz);
add=(Button) findViewById(R.id.add);
reduce=(Button) findViewById(R.id.reduce);
reset=(Button) findViewById(R.id.reset);
text=(TextView) findViewById(R.id.text);
show=(Button) findViewById(R.id.show);
show.setOnClickListener(this);//点击事件监听器
int frist = progress.getProgress();//getProgress()获取第一进度条
int second=progress.getSecondaryProgress();//获取第二进度条
int max = progress.getMax();//获取最大进度
text.setText("第一进度百分比"+(int)(frist/(float)max*100)+"% 第二进度百分比"+(int)(second/(float)max*100)+"%");//进度提示
add.setOnClickListener(this);//设置监控器
reduce.setOnClickListener(this);
reset.setOnClickListener(this);
}
@Override//监听事件逻辑
public voidonClick(View v) {//TODO Auto-generated method stub
switch(v.getId()){caseR.id.add:{
progress.incrementProgressBy(10);//增加第一进度十个
progress.incrementSecondaryProgressBy(10);//增加第二进度十个
break;
}caseR.id.reduce:{
progress.incrementProgressBy(-10);//减少第一进度十个
progress.incrementSecondaryProgressBy(-10);//减少第二进度十个
break;
}caseR.id.reset:{
progress.setProgress(10);
progress.setSecondaryProgress(20);break;
}caseR.id.show:{
prodialog=new ProgressDialog(MainActivity.this);//新建ProgressDialog对象
prodialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//设置显示风格
prodialog.setTitle("测试一下");//设置标题
prodialog.setMessage("还是测试一下");//设置对话框内容
prodialog.setIcon(R.drawable.ic_launcher);//图标设置
prodialog.setMax(100);//设定最大进度
prodialog.incrementProgressBy(10);//设定初始进度
prodialog.setIndeterminate(false);//进度条的明确显示,true是不明确//设定确定按钮
prodialog.setButton(DialogInterface.BUTTON_POSITIVE, "确定", newDialogInterface.OnClickListener() {
@Overridepublic void onClick(DialogInterface arg0, intarg1) {//TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "依旧测试一下", Toast.LENGTH_SHORT).show();//显示文字信息
}
});
prodialog.setCancelable(true);//是否可以通过返回按钮退出
prodialog.show();//显示
break;
}
}//每次点击完成动态更新
text.setText("第一进度百分比"+(int)(progress.getProgress()/(float)progress.getMax()*100)+"% 第二进度百分比"+(int)(progress.getSecondaryProgress()/(float)progress.getMax()*100)+"%");
};
}