您的位置:首页 > 移动开发 > Android开发

Android-基本控件(ProgressBar 和 ProgressDialog)

2015-08-23 18:52 633 查看

1.回顾

   之前学习了 SimapleAdapter, BaseAdapter和 ArrayAdapter 三种适配器和 Listview ,GridView ,Spanner 控件的使用;

2.重点

  (1)ProgressBar

  (2)重要属性

  (3)ProgressBarDialog

  (4)实现了标题栏上的进度条

  (5)基本的ProgressBar的实现

  (6)实现了ProgressBarDialog 弹窗式进度条;

3.风格和分类

  风格:

                        默认为中型进度条:

style="?android:attr/progressBarStyleLarge"
style="?android:attr/progressBarStyleSmall"
style="?android:attr/progressBarStyleHorizontal"


  分类:         

       精确显示进度:显示刻度和百分比

       不精确进度:不确定加载时间

4. 标题栏上的进度条

   在 onCreate 方法中使用:

在OnCreate
//启用窗口特征 ,启用带进度条和不带进度的进度条
requestWindowFeature(Window.FEATURE_PROGRESS);
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
setProgressBarVisibility(true);
setProgressBarIndeterminateVisibility(true);
//进度最大值 10000
setProgress(6000);


5.基本布局和重要属性

        最大刻度:

        android:max="100"

        第一刻度:

        android:progress="40"

        第二刻度:

        android:secondaryProgress="80"

<ProgressBar
android:max="100"
android:progress="40"
android:secondaryProgress="80"
android:id="@+id/progressBar4"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="50dp" />


6.关键方法

//获取第一进度条的进度
int pro=progressBar4.getProgress();
//获取第二进度的进度
int secPro=progressBar4.getSecondaryProgress();
//获取进度条的最大进度
int maxPro=progressBar4.getMax();

//设置第一进度的进度
progressBar4.setProgress(pro+5);
progressBar4.setSecondaryProgress(secPro+5);
//设置百分比
textview1.setText((int)((pro/(float)maxPro)*100)+"%");


7.使用ProgressBarDialog 实现一个例子

                                              


如图所示的样式实现:

    7.1 声明dialog对象和上下文对象

private ProgressDialog proDia;
private Context mcontext;


   7.2 在 OnCreate 里给 上下文对象赋值

mcontext=this;


   7.3 样式实现

//新建对象
proDia=new ProgressDialog(mcontext);
//设置风格
proDia.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
//设置标题
proDia.setTitle("原明卓");
//设置信息
proDia.setMessage("正在加载。。");
//设置图标
proDia.setIcon(R.drawable.ic_launcher);


    7.4 进度实现

//设定最大进度
proDia.setMax(100);
//设定当前进度
proDia.incrementProgressBy(50);
//设定是明确显示进度
proDia.setIndeterminate(false);


   7.5 交互实现

//设定一个确定按钮
proDia.setButton(DialogInterface.BUTTON_POSITIVE,"确定", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// dialog 里的 点击事件
Toast.makeText(getApplicationContext(),"ProgressBarDialog执行了",Toast.LENGTH_SHORT).show();

}
});

//设定可以退出
proDia.setCancelable(true);
//显示
proDia.show();


8.demo 免积分下载

    http://download.csdn.net/detail/lablenet/9038829
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息