ProgressBarWithText 是 Android 上带文本的进度条。
效果演示:
使用方法: 在布局文件配置:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:progress="http://schemas.android.com/apk/res/org.loader.progressbarwithtext" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <org.loader.progressbarwithtext.ProgressBarWithText android:id="@+id/progress" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android: layout _marginTop="50dip" progress:textColor="#FFFF0000" /> </RelativeLayout>
只有一个属性:progress:textColor 指定文本颜色
在Activity中:
public class MainActivity extends Activity { private ProgressBarWithText mProgress; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mProgress = (ProgressBarWithText) findViewById(R.id.progress); mProgress.setMax(100); new MyAsyncTask().execute(); } class MyAsyncTask extends AsyncTask<Void, Integer, Void> { @Override protected Void doInBackground(Void... params) { for(int i=0;i<101;i++) { try { Thread.sleep(200); } catch (InterruptedException e) { e.printStackTrace(); } publishProgress(i); } return null; } @Override protected void onProgressUpdate(Integer... values) { mProgress.setProgress(values[0]); } }
}