MainActivity.java:
package com.sta.fwk.test; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterViewFlipper; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.ProgressBar; public class MainActivity extends AppCompatActivity { int[] data = new int[100]; int hasdata = 0; int status = 0; ProgressBar pro; Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { if(msg.what==0x111){ pro.setProgress(status); } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); pro = (ProgressBar)super.findViewById(R.id.h1); new Thread(){ @Override public void run() { while(status<100){ status = dowork(); handler.sendEmptyMessage(0x111); } } }.start(); } public int dowork(){ if(hasdata==100||hasdata==99) hasdata = 0; data[hasdata++] = (int)(Math.random()*100); try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } return hasdata; } }xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/root" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:weightSum="1"> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content"> <!-->大进度条<!--> <ProgressBar style="@android:style/Widget.ProgressBar.Large" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/big" /> <ProgressBar style="@android:style/Widget.ProgressBar.Small" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/small" /> <ProgressBar style="@android:style/Widget.ProgressBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/mid" /> </LinearLayout> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceSmall" android:text="进度:" android:id="@+id/info" /> <ProgressBar style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:id="@+id/h1" /> </LinearLayout>效果: