1,ProgressBar是进度条组件,通常用于向用户展示某个耗时操作完成的进度。

2,ProgressBar的关键属性:
*android:max="100"——最大显示进度
*android:progress="50"——第一显示进度
*android:secondaryProgress="80"——第二显示进度
*android:indeterminate="true" ——设置是否不精确显示进度。true表示不精确显示进度,false表示精确显示进度

3,ProgressBar的关键方法:
*setProgress(int)设置第一进度
*setSecondaryProgress(int)设置第二进度
*getProgress()获取第一进度
*getSecondaryProgress() 获取第二进度
*incrementProgressBy(int) 增加或减少第一进度
*incrementSecondaryProgressBy(int)增加或减少第二进度
*getMax() 获取最大进度  

4,XML重要属性:

     *android:progressBarStyle:默认进度条样式

   *android:progressBarStyleHorizontal:水平样式

5,layout布局中的代码:

  

        

6,java类中的代码:

public  class  MainActivity  extends  Activity  implements  OnClickListener {private  ProgressBar  progressBar;private  TextView  text;private  Button  add,reduce,reset;    @Override    protected  void  onCreate(Bundle  savedInstanceState) {        super.onCreate(savedInstanceState);        //启用窗口特征,启用带进度和不带进度的进度条        requestWindowFeature(Window.FEATURE_PROGRESS);        requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);              setContentView(R.layout.main);        //显示两种进度条        setProgressBarVisibility(true);        setProgressBarIndeterminateVisibility(true);        //标题进度条的最大值max=10000        setProgress(600);        //初始化控件        init();    }private void init() {progressBar=(ProgressBar) findViewById(R.id.horizon);add=(Button) findViewById(R.id.add);reduce=(Button) findViewById(R.id.reduce);reset=(Button) findViewById(R.id.reset);text=(TextView) findViewById(R.id.text);//1,获取进度条的第一进度int first=progressBar.getProgress();//2,获取进度条的第二进度int second=progressBar.getSecondaryProgress();//3,获取进度条的最大值int max=progressBar.getMax();//4,设置文本框中的进度百分比text.setText("第一进度百分比:"+(int)(first/(float)max*100)+"%"+"  第二进度百分比:"+(int)(second/(float)max*100)+"%");//5,对三个按钮控件设置监听事件add.setOnClickListener(this);reduce.setOnClickListener(this);reset.setOnClickListener(this);}//通过实现接口的方式来实现对控件的监听@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.add:{//增加第一进度和第二进度10个刻度progressBar.incrementProgressBy(10);progressBar.incrementSecondaryProgressBy(10);break;}case R.id.reduce:{//减少第一进度和第二进度10个刻度progressBar.incrementProgressBy(-10);progressBar.incrementSecondaryProgressBy(-10);break;}case R.id.reset:{//把第一进度和第二进度设置为原来的比例progressBar.setProgress(50);progressBar.setSecondaryProgress(80);break;}default:break;} }//每次点击按钮,都会触发onClick事件,这样每次都可以对text进行更新处理text.setText("第一进度百分比:"+(int)(proressBar.getProgress()/(float)proressBar.getMax()*100)+"%  "+  "第二进度百分比:"+(int)(proressBar.getSecondaryProgress()/(float)proressBar.getMax()*100)+"%");}


 实现效果:


更多相关文章

  1. 关于progressbar进度条的显示风格及一些属性的应用
  2. Spinner的Android:prompt无法显示文本
  3. android中一些配置文件的参数的意义
  4. android:gravity和android:layout_gravity区别
  5. 安卓控件属性
  6. Android中TextView限制行数及末尾已省略号显示
  7. Android实现朋友圈多图显示功能
  8. Android的AlertDialog详解
  9. Android中ListView中显示图片和文本

随机推荐

  1. Android(安卓)DiskLruCache完全解析,硬盘
  2. Android Studio无法真机调试
  3. Android APIDemos 研读之一:android.graph
  4. [Android]Thread线程入门3--多线程
  5. 启动一个没有界面的Activity(且没有焦点)
  6. Android studio APP开发 单选框和复选框
  7. Android常用面向对象设计模式
  8. Android如何让EditText不自动获取焦点
  9. “终于懂了” 系列:Android屏幕刷新机制—
  10. Android 自定义属性时TypedArray的使用方