Welcome

首页 / 移动开发 / Android / Android实战教程第二篇之简单实现两种进度条效果

本文实例实现点击按钮模拟进度条下载进度,“下载”完成进度条消失,供大家参考,具体内容如下

代码如下:
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"> <TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="@string/hello"/> <ProgressBarandroid:id="@+id/firstBar"style="?android:attr/progressBarStyleHorizontal"android:layout_width="200dp"android:layout_height="wrap_content"android:visibility="gone"/> <ProgressBarandroid:id="@+id/secondBar"style="?android:attr/progressBarStyle"android:layout_width="wrap_content"android:layout_height="wrap_content"android:visibility="gone"/> <Buttonandroid:id="@+id/myButton"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="begin"/> </LinearLayout> 
Activity:

package ydl.progressbar;import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ProgressBar;public class ProgressBarTest extends Activity {/** Called when the activity is first created. *///声明变量private ProgressBar firstBar =null;private ProgressBar secondBar = null;private Button myButton = null;private int i = 0 ;@Overridepublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //根据控件的ID来取得代表控件的对象 firstBar = (ProgressBar)findViewById(R.id.firstBar); secondBar = (ProgressBar)findViewById(R.id.secondBar); myButton = (Button)findViewById(R.id.myButton); myButton.setOnClickListener(new ButtonListener());}class ButtonListener implements OnClickListener{@Override public void onClick(View v) {if(i == 0){ //设置进度条处于可见的状态 firstBar.setVisibility(View.VISIBLE); firstBar.setMax(150);//手动设置最大值,默认是100 secondBar.setVisibility(View.VISIBLE);}else if ( i < firstBar.getMax()){ //设置主进度条的当前值 firstBar.setProgress(i); //设置第二进度条的当前值 firstBar.setSecondaryProgress(i + 10); //因为默认的进度条无法显示进行的状态 //secondBar.setProgress(i); }else{ //设置进度条处于不可见状态 firstBar.setVisibility(View.GONE); secondBar.setVisibility(View.GONE);}i = i + 10 ; } } }
 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。