在Android中进度条有很多种:对话框进度条、标题栏进度条和水平进度条等
1、对话框进度条创建步骤如下:
A、覆盖Activity的onCreateDialog()方法,并在其中创建对话框。
B、调用Activity的showDialog()方法,显示进度条对话框。
Activity代码如下:
package com.samyzh.dialogprogressbar;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
private Button myBtn;
@Override
protected
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myBtn=(Button)findViewById(R.id.button_01);
myBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void
onClick(View arg0) {
//
TODO Auto-generated method stub
showDialog(0);
}
});
}
protected
Dialog onCreateDialog(int id){
//实例化进度条对话框
ProgressDialog dialog=new
ProgressDialog(this);
dialog.setTitle("测试对话框");
dialog.setIndeterminate(true);
dialog.setMessage("程序正在加载中,请稍候!!!");
dialog.setCancelable(true);
return dialog;
}
}
程序运行结果如下:
2、标题栏进度条创建步骤如下:
A、调用Activity的requestWindowFeature()方法,获得进度条。
B、调用Activity的setProgressBarIndterminateVisibility()方法,显示进度条。
Activity代码如下所示:
package com.samyzh.indeterminateprogressbar;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.widget.Button;
public class MainActivity extends Activity {
private Button btn1,btn2;
@Override
protected
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置窗口特征
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setContentView(R.layout.main);
btn1=(Button)findViewById(R.id.button01);
btn2=(Button)findViewById(R.id.button02);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void
onClick(View arg0) {
//在窗口显示标题栏进度条
setProgressBarIndeterminateVisibility(true);
}
});
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void
onClick(View arg0) {
//
在窗口取消标题栏进度条
setProgressBarIndeterminateVisibility(false);
}
});
}
}
程序运行结果如下:
3、水平进度条创建步骤如下:
A、在布局文件中申明ProgressBar。
B、在Activity中获得ProgressBar实例
C、调用ProgressBar的incrementProgressBy()方法增加或者减少进度。
Activity代码如下:
package com.samyzh.hpregressbar;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
public class MainActivity extends Activity {
private Button btn1,btn2;
private ProgressBar pb;
@Override
protected
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn1=(Button)findViewById(R.id.button01);
btn2=(Button)findViewById(R.id.button02);
pb=(ProgressBar)findViewById(R.id.progressbar01);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void
onClick(View arg0) {
//
TODO Auto-generated method stub
pb.incrementProgressBy(5);
}
});
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void
onClick(View arg0) {
//
TODO Auto-generated method stub
pb.incrementProgressBy(-5);
}
});
}
}
程序运行结果如下: