飞鱼的专栏

进度条可以方便的告诉用户现在执行任务的进度,特别是一个执行程序比较长的时候,没有进度条,用户不知道程序在执行,会以为程序假死强制关闭。

进度条分为:1.有明确进度信息的,将通过一个带刻度的水平条表示

2.是没有明确的进度信息(比如说一个一直转圈的图形)

3.用户自定义进度条(可以自己定义进度条显示的图片,,旋转方向等样式)

MainActivity.java

package com.example.progressbar;import android.os.Bundle;import android.app.Activity;import android.app.ProgressDialog;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.view.Window;import android.widget.Button;import android.widget.ProgressBar;public class MainActivity extends Activity implements OnClickListener{private Button btnIncrement,btnDecrement;private ProgressBar pb;protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//设置标题进度条必须在setContentView方法之前requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);setContentView(R.layout.activity_main);//设置为可见setProgressBarIndeterminateVisibility(true);btnIncrement = (Button) findViewById(R.id.increment);btnDecrement = (Button) findViewById(R.id.decrement);btnIncrement.setOnClickListener(this);btnDecrement.setOnClickListener(this);pb = (ProgressBar) findViewById(R.id.progressBar4);}public boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}//按钮较多时,而且都要设置按钮的监听器,这时候最简单的方法就是:令Activity实现OnClickListener()接口,//然后通过setOnClickListener将Activity的实例注册到Buttonpublic void onClick(View v) {switch (v.getId()) {case R.id.increment :pb.incrementProgressBy(5);break;case R.id.decrement:pb.incrementProgressBy(-5);break;default:break;}} public void show(View v){//创建一个进度条的对话框组件ProgressDialog pd = new ProgressDialog(this);pd.setTitle("对话框");pd.setMessage("下载中。。。");//设置为水平对话框pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);pd.show();}}activity_main.xml

<LinearLayout xmlns:android=""xmlns:tools=""android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><ProgressBarandroid:id="@+id/progressBar1"android:layout_width="wrap_content"android:layout_height="wrap_content"/><ProgressBarandroid:id="@+id/progressBar2"style="?android:attr/progressBarStyleLarge"android:layout_width="wrap_content"android:layout_height="wrap_content"/><ProgressBarandroid:id="@+id/progressBar3"style="?android:attr/progressBarStyleSmall"android:layout_width="wrap_content"android:layout_height="wrap_content"/><ProgressBarandroid:id="@+id/progressBar4"style="?android:attr/progressBarStyleHorizontal"android:layout_width="wrap_content"android:layout_height="wrap_content"android:max="100"android:progress="50"android:secondaryProgress="70"/><Buttonandroid:id="@+id/increment"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="增加"/><Buttonandroid:id="@+id/decrement"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="减少"/><Buttonandroid:id="@+id/button_show"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="显示对话框进度条"android:onClick="show"/><ProgressBarandroid:id="@+id/progressBar5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:indeterminateDrawable="@drawable/pb_custom"/></LinearLayout>pb_custom.xml

主要设置了自定义小机器人旋转的进度条配置,设置从0~360度旋转,旋转中心是图片的中心,根据X,Y设置。

<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="" ><item ><rotate android:drawable="@drawable/ic_launcher"android:fromDegrees="0"android:toDegrees="360"android:pivotX="50%"android:pivotY="50%"/></item></layer-list> 

流过泪的眼睛更明亮,滴过血的心灵更坚强!

飞鱼的专栏

相关文章:

你感兴趣的文章:

标签云: