首页 > 移动平台 > 详细

android学习日记03--常用控件progressbar/seekbar

时间:2014-02-12 02:46:10      阅读:497      评论:0      收藏:0      [点我收藏+]

5、progressbar
进度条,比较常用的组件,一般有圆形和条形两种;
默认进度条是圆形的
小圆型进度条:
style="?android:attr/progressBarStyleSmall"

大圆形进度条:
style="?android:attr/progressBarStyleLarge"

条形进度条:
style="?android:attr/progressBarStyleHorizontal"

android:max="100" --最大值
android:progress="50" --初始值
android:secondaryProgress="60" --次进度条值

例子:

新开个线程,让条形进度条从最小增到最大,再减到最小

bubuko.com,布布扣
 1 public class MainActivity extends Activity implements Runnable{
 2 
 3     private Thread td;
 4     private ProgressBar pb;
 5     private boolean stateChange;
 6     
 7     @Override
 8     protected void onCreate(Bundle savedInstanceState) {
 9         super.onCreate(savedInstanceState);
10         setContentView(R.layout.activity_main);
11         
12         pb = (ProgressBar)findViewById(R.id.pd);
13         td = new Thread(this);
14         
15         td.start();
16     }
17 
18 
19     @Override
20     public boolean onCreateOptionsMenu(Menu menu) {
21         // Inflate the menu; this adds items to the action bar if it is present.
22         getMenuInflater().inflate(R.menu.main, menu);
23         return true;
24     }
25 
26 
27     @Override
28     public void run() {
29         // TODO Auto-generated method stub
30         while(true) {
31             int current = pb.getProgress();
32             int max = pb.getMax();
33             int securrent = pb.getSecondaryProgress();
34             
35             if (stateChange == false) {
36                 if(current >= max) {
37                     stateChange = true;
38                 }else {
39                     pb.setProgress(current+1);
40                     pb.setSecondaryProgress(current+1);
41                 }
42             }else {
43                 if(current <= 0) {
44                     stateChange = false;
45                 }else {
46                     pb.setProgress(current-1);
47                     pb.setSecondaryProgress(current-1);
48                 }
49             }
50             
51             try {
52                 td.sleep(50);
53             } catch (Exception e) {
54                 e.printStackTrace();
55             }
56         }
57     }
58     
59 }
View Code

bubuko.com,布布扣

 

6、seekBar
拖动条

监听事件:

bubuko.com,布布扣
 1 @Override
 2 public void onStopTrackingTouch(SeekBar seekBar) {
 3 // TODO Auto-generated method stub
 4 tv.setText("拖动完成...");
 5 }
 6 
 7 @Override
 8 public void onStartTrackingTouch(SeekBar seekBar) {
 9 // TODO Auto-generated method stub
10 tv.setText("拖动中...");
11 }
12 
13 @Override
14 public void onProgressChanged(SeekBar seekBar, int progress,
15 boolean fromUser) {
16 // TODO Auto-generated method stub
17 tv.setText("当前拖动条值为:"+progress);
18 }
View Code

bubuko.com,布布扣

类似长型的进度条,只是可以手动拖到,
也有
android:max="100" --最大值
android:progress="50" --初始值
android:secondaryProgress="60" --次进度条值

android学习日记03--常用控件progressbar/seekbar

原文:http://www.cnblogs.com/aiguozhe/p/3545056.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!