最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

Android開發(fā)學習教程(10)- Android ProgressBar用法和屬性

2023-01-27 16:03 作者:考研保研直通車  | 我要投稿

上一篇我們講了圖片控件ImageView的基本用法,這里來學習進度條控件ProgressBar的基本用法。

ProgreeBar是什么

ProgressBar進度條控件,如數據加載中、下載進度顯示、視頻播放進度顯示等等。ProgressBar有兩種形態(tài),一種是圓形的,常用來顯示如數據加載中等待狀態(tài),另一種是水平線性的,常用來表示為如下載進度、視頻播放進度等。

ProgreeBar有什么用

用來顯示數據加載中、下載進度、視頻播放進度等。

ProgreeBar怎么用

繼續(xù)基于上一篇的項目,我們增加幾個進度條Progressbar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?xml?version="1.0"?encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout?xmlns:android="http://schemas.android.com/apk/res/android"
????xmlns:app="http://schemas.android.com/apk/res-auto"
????xmlns:tools="http://schemas.android.com/tools"
????android:layout_width="match_parent"
????android:layout_height="match_parent"
????tools:context=".TestActivity">
????<ScrollView
????????android:layout_width="match_parent"
????????android:layout_height="wrap_content"
????????app:layout_constraintBottom_toBottomOf="parent"
????????app:layout_constraintTop_toTopOf="parent"
????????app:layout_constraintVertical_bias="0.0">
????????<androidx.constraintlayout.widget.ConstraintLayout
????????????android:layout_width="match_parent"
????????????android:layout_height="wrap_content"
????????????app:layout_constraintBottom_toBottomOf="parent"
????????????app:layout_constraintTop_toTopOf="parent">
????????????
????????????<ProgressBar
????????????????android:id="@+id/progress_circular"
????????????????style="@style/Widget.AppCompat.ProgressBar"
????????????????android:layout_width="match_parent"
????????????????android:layout_height="wrap_content"
????????????????app:layout_constraintStart_toStartOf="@+id/tv9"
????????????????app:layout_constraintTop_toBottomOf="@+id/tv9"?/>
????????????<ProgressBar
????????????????android:id="@+id/progress_horizontal"
????????????????style="@style/Widget.AppCompat.ProgressBar.Horizontal"
????????????????android:layout_width="match_parent"
????????????????android:layout_height="wrap_content"
????????????????android:progress="20"
????????????????app:layout_constraintStart_toStartOf="@+id/progress_circular"
????????????????app:layout_constraintTop_toBottomOf="@+id/progress_circular"?/>
????????????<ProgressBar
????????????????android:id="@+id/progress_horizontal2"
????????????????style="@style/Widget.AppCompat.ProgressBar.Horizontal"
????????????????android:layout_width="match_parent"
????????????????android:layout_height="4dp"
????????????????android:max="100"
????????????????android:progress="40"
????????????????android:progressDrawable="@drawable/layer_list_progressbar"
????????????????app:layout_constraintStart_toStartOf="@+id/progress_horizontal"
????????????????app:layout_constraintTop_toBottomOf="@+id/progress_horizontal"?/>
????????????<ProgressBar
????????????????android:id="@+id/progress_horizontal3"
????????????????style="@style/Widget.AppCompat.ProgressBar.Horizontal"
????????????????android:layout_width="match_parent"
????????????????android:layout_height="4dp"
????????????????android:layout_marginTop="6dp"
????????????????android:progress="40"
????????????????android:secondaryProgress="45"
????????????????android:progressDrawable="@drawable/layer_list_progressbar"
????????????????app:layout_constraintStart_toStartOf="@+id/progress_horizontal2"
????????????????app:layout_constraintTop_toBottomOf="@+id/progress_horizontal2"?/>
????????</androidx.constraintlayout.widget.ConstraintLayout>
????</ScrollView>
</androidx.constraintlayout.widget.ConstraintLayout>

可以看到圖中最下面的進度條有四種狀態(tài),從上到下四種進度條分別為:

第一種圓形進度條:

1
2
3
4
5
6
7
<ProgressBar
????android:id="@+id/progress_circular"
????style="@style/Widget.AppCompat.ProgressBar"
????android:layout_width="match_parent"
????android:layout_height="wrap_content"
????app:layout_constraintStart_toStartOf="@+id/tv9"
????app:layout_constraintTop_toBottomOf="@+id/tv9"?/>

style=”@style/Widget.AppCompat.ProgressBar”:表示進度條的風格采用系統默認圓形進度條樣式,實際的效果是,圓形進度條會自動轉圈圈的,類似加載中的效果。

第二種默認樣式水平進度條:

1
2
3
4
5
6
7
8
<ProgressBar
????android:id="@+id/progress_horizontal"
????style="@style/Widget.AppCompat.ProgressBar.Horizontal"
????android:layout_width="match_parent"
????android:layout_height="wrap_content"
????android:progress="20"
????app:layout_constraintStart_toStartOf="@+id/progress_circular"
????app:layout_constraintTop_toBottomOf="@+id/progress_circular"?/>
1
2
style="@style/Widget.AppCompat.ProgressBar.Horizontal":表示進度條的風格采用系統默認水平進度條樣式。
android:progress="20":表示進度條的進度顯示到20%,進度條默認最大值100。

第三種自定義進度條顏色:

1
2
3
4
5
6
7
8
9
10
<ProgressBar
????android:id="@+id/progress_horizontal2"
????style="@style/Widget.AppCompat.ProgressBar.Horizontal"
????android:layout_width="match_parent"
????android:layout_height="4dp"
????android:max="100"
????android:progress="40"
????android:progressDrawable="@drawable/layer_list_progressbar"
????app:layout_constraintStart_toStartOf="@+id/progress_horizontal"
????app:layout_constraintTop_toBottomOf="@+id/progress_horizontal"?/>

android:progressDrawable=”@drawable/layer_list_progressbar”:表示使用shape xml的方式設置進度條的顏色,xml文件如下(里面具體的配置暫時不詳細說明,到后續(xù)篇章會詳細講到):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml?version="1.0"?encoding="utf-8"?>
<layer-list?xmlns:android="http://schemas.android.com/apk/res/android">
????<item?android:id="@android:id/background">
????????<shape>
????????????<solid?android:color="#ffffff"?/>
????????</shape>
????</item>
????<item?android:id="@android:id/progress">
????????<clip>
????????????<shape>
????????????????<solid?android:color="@color/teal_700"?/>
????????????</shape>
????????</clip>
????</item>
</layer-list>

第四種帶第二進度的進度:

第二進度的效果就是在線看電影時進度條除了顯示當前觀看的進度,還會顯示一個已緩沖的進度,這個就是第二進度,本文中的帶第二進度的進度條:

1
2
3
4
5
6
7
8
9
10
11
<ProgressBar
????android:id="@+id/progress_horizontal3"
????style="@style/Widget.AppCompat.ProgressBar.Horizontal"
????android:layout_width="match_parent"
????android:layout_height="4dp"
????android:layout_marginTop="6dp"
????android:progress="40"
????android:secondaryProgress="45"
????android:progressDrawable="@drawable/layer_list_progressbar"
????app:layout_constraintStart_toStartOf="@+id/progress_horizontal2"
????app:layout_constraintTop_toBottomOf="@+id/progress_horizontal2"?/>

android:secondaryProgress=”45″:表示第二進度的進度值。

android:progressDrawable=”@drawable/layer_list_progressbar”:同樣表示使用shape xml的方式設置第一和第二進度條的顏色,xml文件如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml?version="1.0"?encoding="utf-8"?>
<layer-list?xmlns:android="http://schemas.android.com/apk/res/android">
????<item?android:id="@android:id/background">
????????<shape>
????????????<solid?android:color="#ffffff"?/>
????????</shape>
????</item>
????<item?android:id="@android:id/secondaryProgress">
????????<clip>
????????????<shape>
????????????????<solid?android:color="#01AF9F"?/>
????????????</shape>
????????</clip>
????</item>
????<item?android:id="@android:id/progress">
????????<clip>
????????????<shape>
????????????????<solid?android:color="@color/teal_700"?/>
????????????</shape>
????????</clip>
????</item>
</layer-list>

源碼鏈接:https://yunjunet.cn/876744.html

Android開發(fā)學習教程(10)- Android ProgressBar用法和屬性的評論 (共 條)

分享到微博請遵守國家法律
大关县| 招远市| 江川县| 迁安市| 江油市| 武邑县| 沧源| 五家渠市| 古浪县| 庆元县| 镇远县| 苏尼特左旗| 汶川县| 五大连池市| 萨嘎县| 兴隆县| 青川县| 西丰县| 雅安市| 绥德县| 钦州市| 绍兴市| 囊谦县| 阜康市| 江川县| 香格里拉县| 邢台市| 平塘县| 合水县| 北碚区| 钟祥市| 集贤县| 临清市| 通河县| 息烽县| 阿勒泰市| 杭锦后旗| 永兴县| 钟山县| 大连市| 中宁县|