Android—ProgressBar进度条应用

落日映苍穹つ 2022-08-21 07:59 322阅读 0赞

.java

  1. package com.example.myapp;
  2. import android.app.Activity;
  3. import android.app.ProgressDialog;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.view.Window;
  7. public class MainActivity extends Activity {
  8. @Override
  9. protected void onCreate(Bundle savedInstanceState) {
  10. super.onCreate(savedInstanceState);
  11. //设置标题栏进度条
  12. requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
  13. setContentView(R.layout.activity_main);
  14. //显示进度条
  15. setProgressBarIndeterminateVisibility(true);
  16. }
  17. /*
  18. 显示对话框进度条
  19. */
  20. public void showDialogProgress(View view)
  21. {
  22. //创建对话框进度条
  23. //ProgressDialog pd=new ProgressDialog(this);
  24. // pd.setMax(100);
  25. // pd.setIndeterminate(false);
  26. // pd.setProgress(30);
  27. // pd.setCancelable(true); //是否可以被取消
  28. // pd.setTitle("下载对话框");
  29. // pd.setMessage("正在下载中...");
  30. // pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); //设置成水平进度条
  31. // pd.show();
  32. //第2种方式
  33. ProgressDialog pd2=ProgressDialog.show(this,"download","downloading...",false,true);
  34. }
  35. }

.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:tools="http://schemas.android.com/tools"
  4. xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"
  5. android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
  6. android:paddingRight="@dimen/activity_horizontal_margin"
  7. android:paddingTop="@dimen/activity_vertical_margin"
  8. android:paddingBottom="@dimen/activity_vertical_margin"
  9. app:layout_behavior="@string/appbar_scrolling_view_behavior"
  10. tools:showIn="@layout/activity_main" tools:context=".MainActivity">
  11. <ProgressBar
  12. style="?android:attr/progressBarStyleLarge"
  13. android:layout_width="wrap_content"
  14. android:layout_height="wrap_content"
  15. android:id="@+id/progressBar"
  16. android:layout_alignParentTop="true"
  17. android:layout_alignParentLeft="true"
  18. android:layout_alignParentStart="true" />
  19. <ProgressBar
  20. android:layout_width="wrap_content"
  21. android:layout_height="wrap_content"
  22. android:id="@+id/progressBar2"
  23. android:layout_below="@+id/progressBar"
  24. android:layout_alignParentLeft="true"
  25. android:layout_alignParentStart="true" />
  26. <ProgressBar
  27. style="?android:attr/progressBarStyleSmall"
  28. android:layout_width="wrap_content"
  29. android:layout_height="wrap_content"
  30. android:id="@+id/progressBar3"
  31. android:layout_below="@+id/progressBar2"
  32. android:layout_alignParentLeft="true"
  33. android:layout_alignParentStart="true" />
  34. <ProgressBar
  35. style="?android:attr/progressBarStyleHorizontal"
  36. android:layout_width="wrap_content"
  37. android:layout_height="wrap_content"
  38. android:max="100"
  39. android:progress="50"
  40. android:indeterminate="false"
  41. android:secondaryProgress="80"
  42. android:id="@+id/progressBar4"
  43. android:layout_below="@+id/progressBar3"
  44. android:layout_alignParentLeft="true"
  45. android:layout_alignParentStart="true"
  46. android:layout_alignParentRight="true"
  47. android:layout_alignParentEnd="true" />
  48. <Button
  49. android:layout_width="wrap_content"
  50. android:layout_height="wrap_content"
  51. android:text="对话框进度条"
  52. android:id="@+id/button1"
  53. android:onClick="showDialogProgress"
  54. android:layout_below="@+id/progressBar4"
  55. android:layout_alignParentLeft="true"
  56. android:layout_alignParentStart="true"
  57. android:layout_alignParentRight="true"
  58. android:layout_alignParentEnd="true" />
  59. <ProgressBar
  60. style="?android:attr/progressBarStyleLarge"
  61. android:layout_width="wrap_content"
  62. android:layout_height="wrap_content"
  63. android:id="@+id/progressBar5"
  64. android:indeterminateDrawable="@drawable/progress_bg"
  65. android:layout_below="@+id/button1"
  66. android:layout_alignParentLeft="true"
  67. android:layout_alignParentStart="true" />
  68. </RelativeLayout>

progress_bg.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  3. <item>
  4. <rotate android:drawable="@drawable/jdt"
  5. android:fromDegrees="0"
  6. android:toDegrees="360"
  7. android:pivotX="50%"
  8. android:pivotY="50%"/>
  9. </item>
  10. </layer-list>

运行结果:
1.未设置成水平进度条

Center

2.设置成水平进度条

Center 1

3.方法二显示

Center 2

4.自定义进度条

Center 3

注意:

Center 4

Center 5

发表评论

表情:
评论列表 (有 0 条评论,322人围观)

还没有评论,来说两句吧...

相关阅读