Android-基本控件(ProgressBar 和 ProgressDialog)

本文详细介绍了ProgressBar的使用方法,包括不同风格的进度条展示、关键属性设置、进度条对话框的实现等,并提供了完整的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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.youkuaiyun.com/detail/lablenet/9038829




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值