进度条控件基本使用

一、简介

进度条控件基本使用_Android Basis 

 

二、方法

1)进度条ProgressBar使用方法

1、在layout布局文件中创建ProgressBar控件

<ProgressBar

style="?android:attr/progressBarStyleHorizontal"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:progress="30"

/>

 

2、用ProgressBar对象指向ProgressBar控件

private ProgressBar pb_progressBar1;

pb_progressBar1=(ProgressBar) findViewById(R.id.pb_progressBar1);

 

3、通过ProgressBar对象的getProgress()和setProgress()方法对进度进行修改

if(progress<=100){

  progress=pb_progressBar1.getProgress();

  progress+=(int)(100*0.2);

  pb_progressBar1.setProgress(progress);

}else progress=100;

 

三、代码实例

效果图:

进度条控件基本使用_android_02

点击增加进度按钮:

进度条控件基本使用_控件_03

点击减少进度按钮:

进度条控件基本使用_Android Basis_04

 

代码:

fry.Activity01



1 package fry;
2
3 import com.example.Ex26ProgressBar.R;
4
5 import android.app.Activity;
6 import android.os.Bundle;
7 import android.view.View;
8 import android.view.View.OnClickListener;
9 import android.widget.Button;
10 import android.widget.ProgressBar;
11
12 public class Activity01 extends Activity implements OnClickListener{
13 /*
14 * 进度条ProgressBar使用方法
15 * 1、在layout布局文件中创建ProgressBar控件
16 * 2、用ProgressBar对象指向ProgressBar控件
17 * 3、通过ProgressBar对象的getProgress()和setProgress()方法对进度进行修改
18 *
19 */
20 private Button btn_addProgress;
21 private Button btn_minusProgress;
22 private ProgressBar pb_progressBar1;
23 private int progress;
24 @Override
25 protected void onCreate(Bundle savedInstanceState) {
26
27 // TODO Auto-generated method stub
28 super.onCreate(savedInstanceState);
29 setContentView(R.layout.activity01);
30
31 btn_addProgress=(Button) findViewById(R.id.btn_addProgress);
32 btn_minusProgress=(Button) findViewById(R.id.btn_minusProgress);
33 pb_progressBar1=(ProgressBar) findViewById(R.id.pb_progressBar1);
34
35 btn_addProgress.setOnClickListener(this);
36 btn_minusProgress.setOnClickListener(this);
37
38 }
39 @Override
40 public void onClick(View v) {
41 // TODO Auto-generated method stub
42 switch (v.getId()) {
43 case R.id.btn_addProgress:
44 if(progress<=100){
45 progress=pb_progressBar1.getProgress();
46 progress+=(int)(100*0.2);
47 pb_progressBar1.setProgress(progress);
48 }else progress=100;
49
50 break;
51 case R.id.btn_minusProgress:
52 if(progress>=0){
53 progress=pb_progressBar1.getProgress();
54 progress-=(int)(100*0.2);
55 pb_progressBar1.setProgress(progress);
56 }else progress=0;
57 break;
58
59 default:
60 break;
61 }
62 }
63 }


/Ex26ProgressBar/res/layout/activity01.xml



1 <?xml version="1.0" encoding="utf-8"?>
2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent"
5 android:orientation="vertical" >
6
7 <!-- style设置控件样式 -->
8 <!-- 用?来引用东西 -->
9 <ProgressBar
10 style="?android:attr/progressBarStyleSmall"
11 android:layout_width="wrap_content"
12 android:layout_height="wrap_content"
13 />
14
15 <ProgressBar
16 style="?android:attr/progressBarStyleLarge"
17 android:layout_width="wrap_content"
18 android:layout_height="wrap_content"
19 />
20
21
22 <ProgressBar
23 style="?android:attr/progressBarStyleLargeInverse"
24 android:layout_width="wrap_content"
25 android:layout_height="wrap_content"
26 />
27
28 <ProgressBar
29 style="?android:attr/progressBarStyleHorizontal"
30 android:layout_width="match_parent"
31 android:layout_height="wrap_content"
32 android:progress="30"
33 />
34
35 <ProgressBar
36 android:id="@+id/pb_progressBar1"
37 style="?android:attr/progressBarStyleHorizontal"
38 android:layout_width="match_parent"
39 android:layout_height="wrap_content"
40 android:progress="50"
41 android:secondaryProgress="80"
42 android:layout_marginTop="30dp"
43 />
44
45 <LinearLayout
46 android:layout_width="match_parent"
47 android:layout_height="wrap_content"
48 android:orientation="horizontal"
49 >
50 <Button
51 android:id="@+id/btn_addProgress"
52 android:layout_width="wrap_content"
53 android:layout_height="wrap_content"
54 android:text="增加进度"
55 android:layout_weight="1"
56 />
57
58 <Button
59 android:id="@+id/btn_minusProgress"
60 android:layout_width="wrap_content"
61 android:layout_height="wrap_content"
62 android:text="减少进度"
63 android:layout_weight="1"
64 />
65
66 </LinearLayout>
67
68
69 </LinearLayout>


 

四、注意点

 1、通过ProgressBar对象的getProgress()和setProgress()方法对进度进行修改

progress=pb_progressBar1.getProgress();

progress+=(int)(100*0.2);

pb_progressBar1.setProgress(progress);

2、遇到不知道的控件和属性,可以通过set和get方法来看看怎么使用

 


​​