当前位置:   article > 正文

android进度条的使用(PrograssBar,SeekBar,RatingBar)_安卓 11 拖动亮度进度条,屏幕亮度不实时变化,必须手指离开才发生变化

安卓 11 拖动亮度进度条,屏幕亮度不实时变化,必须手指离开才发生变化

 页面上有一个进度条,10S让进度条自动完成

  1. <span style="font-size:14px;">import android.app.Activity;
  2. import android.os.Bundle;
  3. import android.os.Handler;
  4. import android.os.Message;
  5. import android.widget.ProgressBar;
  6. import com.example.android_lb_day2.R;
  7. public class PrograssBarTest extends Activity {
  8. ProgressBar bar;
  9. int current = 0;
  10. @Override
  11. protected void onCreate(Bundle savedInstanceState) {
  12. // TODO Auto-generated method stub
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.activity_prograssbar);
  15. bar = (ProgressBar) findViewById(R.id.bar);
  16. Thread t = new Thread(able);
  17. t.start();
  18. }
  19. Runnable able = new Runnable() {
  20. @Override
  21. public void run() {
  22. int max = bar.getMax();//获取进度条的最大值
  23. try {
  24. while (max != bar.getProgress()) {
  25. int step = max / 10;
  26. int currentBar = bar.getProgress(); //得到当前进度条
  27. bar.setProgress(step + currentBar);
  28. Thread.sleep(1000);
  29. }
  30. } catch (InterruptedException e) {
  31. // TODO Auto-generated catch block
  32. e.printStackTrace();
  33. }
  34. }
  35. };
  36. }</span>

ProgressBar及其子类:

ProgressBar有两个子类:SeekBar--------------------可拖拽性的进度条,一般用来调节系统音量屏幕亮度等

                                     RatingBar-------------------星星形状的评分条

Android支持几种风格的进度条
 @android:style/Widget.ProgressBar.Horizontal-------------------------水平进度条
 @android:style/Widget.ProgressBar.Inverse----------------------------普通大小的环形进度条
 @android:style/Widget.ProgressBar.Large-------------------------大环形进度条
 @android:style/Widget.ProgressBar.Large.Inverse-------------------------大环形进度条
 @android:style/Widget.ProgressBar.Small-------------------------小环形进度条
 @android:style/Widget.ProgressBar.Small.Inverse-------------------------小环形进度条


还有一种现实在标题上的进度条

第一步:(必须在设置布局文件之前设置)
//设置窗口特性:启用显示进度的进度条
在setContentView之前调用requestWindowFeature(Window.FEATURE_PROGRESS);
//设置窗口特性:启用不显示进度的进度条
在setContentView之前调用requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);

第二部:
//显示不带进度的进度条
 setProgressBarIndeterminateVisibility(true);
//显示带进度的进度条
 setProgressBarVisibility(true);


为seekbar添加监听器

seekbar .setOnSeekBarChangeListener( new  OnSeekBarChangeListener() {
                  
                    @Override
                    public  void  onStopTrackingTouch(SeekBar seekBar) {
                          //  TODO  Auto-generated method stub
                          //手指离开滑块的时候触发该方法
                  }
                  
                    @Override
                    public  void  onStartTrackingTouch(SeekBar seekBar) {
                          //  TODO  Auto-generated method stub
                          //手指按住滑块的时候触发该方法
                  }
                  
                    @Override
                    public  void  onProgressChanged(SeekBar seekBar,  int  progress,
                                boolean  fromUser) {
                          //  TODO  Auto-generated method stub
                          //当滑块的位置发生改变的时候触发方法
                  }
            });

为RatingBar添加监听器


        ratingBar .setOnRatingBarChangeListener( new  OnRatingBarChangeListener() {
                  
                    @Override
                    public  void  onRatingChanged(RatingBar ratingBar,  float  rating,
                                boolean  fromUser) {
                          // 当拖动滑块位置发生改变的时候触发该方法
                        
                  }
            });


本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/699952
推荐阅读
相关标签
  

闽ICP备14008679号