Android開(kāi)發(fā)基礎(chǔ)使用ProgressBar加載進(jìn)度條示例
前言
之前我們用過(guò)WebView類,打開(kāi)網(wǎng)頁(yè)時(shí)就會(huì)出現(xiàn)加載網(wǎng)頁(yè)的情況,為了讓我們直觀的感受到網(wǎng)頁(yè)加載到什么程度而不是白白干等著空白頁(yè),于是加載進(jìn)度條就是一個(gè)很好的展示方式,而通常情況下,當(dāng)我們的數(shù)據(jù)未加載完成時(shí)就會(huì)去使用進(jìn)度條,而ProgressBar就是用于界面上顯示進(jìn)度條的,下面讓我們看看這個(gè)控件的使用方法。
使用方法
首先我們將ProgressBar控件加到布局中:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout 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" android:orientation="vertical" tools:context=".WebViewTest"> ... <ProgressBar android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>
然后運(yùn)行程序就會(huì)發(fā)現(xiàn)我們的這個(gè)頁(yè)面上會(huì)加載這個(gè)進(jìn)度條的圈:
但我們會(huì)發(fā)現(xiàn),這個(gè)圈一直在加載,所以就需要我們對(duì)這個(gè)控件進(jìn)行控制,正常情況下應(yīng)該在數(shù)據(jù)未加載完成前顯示,加載完成后隱藏控件的,直接用setVisibility()方法來(lái)實(shí)現(xiàn)即可,我們這邊簡(jiǎn)化一下,通過(guò)點(diǎn)擊頁(yè)面按鈕來(lái)顯示和隱藏:
<FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <WebView android:id="@+id/vWebView" android:layout_width="match_parent" android:layout_height="match_parent"/> <Button android:id="@+id/vClick" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button" android:layout_gravity="center"/> </FrameLayout>
binding.vClick.setOnClickListener { if (binding.progressBar.visibility == View.VISIBLE) { binding.progressBar.visibility = View.GONE } else { binding.progressBar.visibility = View.VISIBLE } }
效果如下:
但是正常來(lái)說(shuō),web頁(yè)面我們一般不使用圈的方式,而是條形,其實(shí)很簡(jiǎn)單,只要改ProgressBar控件在XML布局中的一個(gè)屬性:
<ProgressBar android:id="@+id/progressBar" android:layout_width="match_parent" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" android:max="100" />
將它的style改為水平進(jìn)度條,進(jìn)度條最大長(zhǎng)度設(shè)置為100,然后在Activity中代碼控制這個(gè)進(jìn)度長(zhǎng)度即可:
binding.vClick.setOnClickListener { // if (binding.progressBar.visibility == View.VISIBLE) { // binding.progressBar.visibility = View.GONE // } else { // binding.progressBar.visibility = View.VISIBLE // } if (binding.progressBar.progress == 0) { binding.progressBar.visibility = View.VISIBLE } binding.progressBar.progress = binding.progressBar.progress + 10 if (binding.progressBar.progress == 100) { binding.progressBar.progress = 0 binding.progressBar.visibility = View.GONE } }
效果如下:
總結(jié)
本篇主要是介紹了進(jìn)度條ProgressBar控件的基本使用方法,這個(gè)控件的應(yīng)用場(chǎng)景非常多,而且現(xiàn)在也有很多封裝好更漂亮的控件,當(dāng)我們需要獲取數(shù)據(jù)去加載時(shí)就適合去展示一段加載圈形式的進(jìn)度條,再配合Dialog的效果,就能讓用戶感覺(jué)到數(shù)據(jù)的加載過(guò)程,這應(yīng)該也是數(shù)據(jù)可視化的一種應(yīng)用吧!
以上就是Android開(kāi)發(fā)基礎(chǔ)使用ProgressBar加載進(jìn)度條示例的詳細(xì)內(nèi)容,更多關(guān)于Android ProgressBar加載進(jìn)度條的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Android入門之彈出式對(duì)話框的實(shí)現(xiàn)
- Android入門之利用Spinner實(shí)現(xiàn)彈出選擇對(duì)話框
- Android對(duì)話框使用方法詳解
- Android自定義對(duì)話框的簡(jiǎn)單實(shí)現(xiàn)
- 五分了解Android?Progress?Bar進(jìn)度條加載
- Android自定義View實(shí)現(xiàn)進(jìn)度條動(dòng)畫
- Android實(shí)現(xiàn)簡(jiǎn)單實(shí)用的垂直進(jìn)度條
- android實(shí)現(xiàn)簡(jiǎn)單進(jìn)度條ProgressBar效果
- Jetpack Compose實(shí)現(xiàn)對(duì)話框和進(jìn)度條實(shí)例解析
相關(guān)文章
Kotlin實(shí)現(xiàn)網(wǎng)絡(luò)圖片下載和保存功能
根據(jù)Android多線程和網(wǎng)絡(luò)編程的知識(shí)講解和案例使用,使用Handler消息機(jī)制實(shí)現(xiàn)網(wǎng)絡(luò)圖片下載,并且保存到模擬器中,強(qiáng)化對(duì)Android多線程編程、網(wǎng)絡(luò)編程和文件讀寫的理解,這篇文章主要介紹了Kotlin實(shí)現(xiàn)網(wǎng)絡(luò)圖片下載和保存功能,需要的朋友可以參考下2023-02-02Android string-array數(shù)據(jù)源簡(jiǎn)單使用
這篇文章主要介紹了Android string-array數(shù)據(jù)源簡(jiǎn)單使用的相關(guān)資料,需要的朋友可以參考下2016-09-09Android 解決build path errors的問(wèn)題
這篇文章主要介紹了Android 解決build path errors的問(wèn)題的相關(guān)資料,需要的朋友可以參考下2016-09-09Android應(yīng)用實(shí)踐之?dāng)?shù)獨(dú)游戲開(kāi)發(fā)
這篇文章主要為大家詳細(xì)介紹了Android應(yīng)用實(shí)踐之?dāng)?shù)獨(dú)游戲開(kāi)發(fā),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12Android實(shí)現(xiàn)登錄界面的注冊(cè)功能
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)登錄界面的注冊(cè)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04Android使用ItemTouchHelper實(shí)現(xiàn)側(cè)滑刪除和拖拽
這篇文章主要為大家詳細(xì)介紹了Android使用ItemTouchHelper實(shí)現(xiàn)側(cè)滑刪除和拖拽,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08