ProgressBar 的使用 —— Android 发现之旅 2011/03/28

这里我是通过一个button 的 click 事件 来控制 ProgressBar 的 进度。

 

首先我在  main.xml 布局文件中定义好 一些用到的 控件。 具体代码如下:

 

<? xml version="1.0" encoding="utf-8" ?>
< LinearLayout  xmlns:android ="http://schemas.android.com/apk/res/android"
    android:orientation
="vertical"
    android:layout_width
="fill_parent"
    android:layout_height
="fill_parent"
    
>
< TextView  
    
android:layout_width ="fill_parent"  
    android:layout_height
="wrap_content"  
    android:text
="@string/hello"
    
/>

< ProgressBar 
    
android:id ="@+id/FirstBar"
    style
="?android:attr/progressBarStyleHorizontal"
    android:layout_width
="300dp"
    android:layout_height
="wrap_content"
    android:max
="200"  
    android:visibility
="gone"    />
    
< ProgressBar 
    
android:id ="@+id/SecondBar"
    android:layout_width
="wrap_content"
    android:layout_height
="wrap_content"
    android:max
="200"  
    android:visibility
="gone"   />
    
< Button 
    
android:id ="@+id/btnSubmit"
    android:layout_width
="wrap_content"
    android:layout_height
="wrap_content"
    android:text
="@string/Text_btnSubmit"   />
    
</ LinearLayout >

 这里面定义了两个 ProgressBar  一个的样式有改变 。 style="?android:attr/progressBarStyleHorizontal", 即把这个 ProgressBar 定义为一个横向的。 稍后再运行结果中会有所体现。 另外一个样式没有任何定义, 它默认是 android 默认的 圆形的。

android:max ="200"       给 ProgressBar 赋了最大值。 这个值也可以在 代码中进行赋值:  pb1.serMax(200);

 

android:visibility ="gone"    将ProgressBar 的初始状态设置为 gone, 即不可见状态。

 

 

 

 

然后,在代码中  进行编码。

 

package  com.andorid.ProgressBarDemo;

import  android.app.Activity;
import  android.view.View;
import  android.view.View.OnClickListener;
import  android.widget. * ;
import  android.os.Bundle;

public   class  ProgressBarDemo  extends  Activity {
    
private  ProgressBar pb1  =   null ;
    
private  ProgressBar pb2  =   null ;
    
private  Button btnSubmit  =   null ;
    
private   int  i  =   0 ;
    
    
/**  Called when the activity is first created.  */
    @Override
    
public   void  onCreate(Bundle savedInstanceState) {
        
super .onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        pb1 
=  (ProgressBar)findViewById(R.id.FirstBar);
        pb2 
=  (ProgressBar)findViewById(R.id.SecondBar);
        btnSubmit 
=  (Button)findViewById(R.id.btnSubmit);
        
        btnSubmit.setOnClickListener(
new  btnSubmitListener());
    }
    
    
class  btnSubmitListener  implements  OnClickListener {
        @Override
        
public   void  onClick(View arg0) {
            
//  TODO Auto-generated method stub
            
            
if (i  ==   0 ) {
                pb1.setVisibility(View.VISIBLE);
                pb2.setVisibility(View.VISIBLE);
            }
            
else   if (i  <  pb1.getMax()) {
                pb1.setProgress(i);
                pb1.setSecondaryProgress(i 
+   20 );
                pb2.setProgress(i);
            }
            
else  {
                pb1.setVisibility(View.GONE);
                pb2.setVisibility(View.GONE);
                i 
=   0 ;
            }
            i 
+=   10 ;            
        }
        
    }
    
}

 

 通过对button的 click 事件进行监听 来控制 ProgressBar的进度。

 

pb1.setProgress(i);     设置 ProgressBar 的值(黄色部分)。

pb1.setSecondaryProgress(i 
+  20 );     设置预加载的 ProgressBar 的值(浅黄色的部分)。
 

 

 运行的结果为:

 

 点击 Button  就会出现 ProgressBar  如下图:

 

 以上就是我所学的最简单的 ProgressBar 的Demo。  记录与2011-03-28晚。

 

转载于:https://www.cnblogs.com/jamsewang/archive/2011/03/28/1998259.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值