//每按一下button, 进度条增加10
public class MainActivity extends Activity {
private ProgressBar progressbar1;
private int precent;
private Button button;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
progressbar = (ProgressBar)findViewById(R.id.first_bar);
button = (Button)findViewById(R.id.mybutton);
button.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
if(precent == 0){
progressbar.setProgress(0);
progressbar.setSecondaryProgress(0);
progressbar.setVisibility(View.VISIBLE);
}else if(precent <= progressbar.getMax()){
//如果进度条未到最大值,则设置进度条前进
progressbar.setProgress(precent);
//设置进度条的深色部分
progressbar.setSecondaryProgress(precent+10);
//设置进度条的浅色部分
}else{
progressbar.setVisibility(View.VISIBLE);
}
precent+=10; //每次进度增加10
}
});
}
}
activity_main.XML文件:
ProgressBar有几种style
Widget.ProgressBar.Horizontal
Widget.ProgressBar.Small
Widget.ProgressBar.Large
Widget.ProgressBar.Inverse
Widget.ProgressBar.Small.Inverse
Widget.ProgressBar.Large.Inverse
The "inverse" styles provide an inverse color scheme for the spinner, which may be necessary if your application uses a light colored theme (a white background).
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myItem"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ProgressBar
android:id="@+id/first_bar"
android:layout_height="100dp"
android:layout_width="200dp"
style="@android:style/Widget.ProgressBar.Horizontal"
android:max="100"
android:visibility="gone" <!--设置进度条不可见-->
/>
<Button
android:id="@+id/mybutton"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="begin"
/>
</LinearLayout>