进度条分为不断滚动的小圆圈,和长条状的进度条
长条状进度条的使用
<ProgressBar
android:id="@+id/progressBar2"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="448dp"
android:max="100"
android:progress="47"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
我们按照上述代码,可以实现一个水平的进度条,我们也可以通过max参数来控制进度条的最大值,通过progress参数控制进度条的初始值。
同时我们也可以通过下面这条java语句控制进度条的增减,在我们获取进度条对象以后。
progressBar.incrementProgressBy(10);
参数为正数时进度条增加,参数为负数时进度条减少。
圈型进度条的小例子
我们实现一下点击按钮之后,过五秒钟进度条消失。
这里涉及到删除组件的情况,我们不能在主线程之外删除组件,但是如果不设置多线程,五秒钟会造成线程阻塞,导致程序意外退出。这里我们采取了view.post()方法来实现。
view.post()来实现组件的删除
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="116dp"
app:layout_constraintBottom_toTopOf="@+id/progressBar2"
app:layout_constraintEnd_toEndOf="@+id/progressBar2"
app:layout_constraintStart_toStartOf="@+id/progressBar2"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="134dp"
android:layout_marginRight="134dp"
android:layout_marginBottom="63dp"
a