欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

android實現(xiàn)簡單進度條ProgressBar效果

 更新時間:2022年07月20日 10:53:35   作者:愛吃魚的貓醬  
這篇文章主要為大家詳細介紹了android實現(xiàn)簡單進度條ProgressBar效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了android實現(xiàn)簡單進度條ProgressBar的具體代碼,供大家參考,具體內容如下

記錄一下今天學習的進度條ProgressBar

1、在布局文件中添加ProgressBar

<ProgressBar
? ? ? ? android:id="@+id/progressbar"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? style="@android:style/Widget.ProgressBar.Horizontal"
? ? ? ? android:max="100"
? ? ? ? android:layout_marginTop="150dp"
? ? ? ? />

其中**style=“@android:style/Widget.ProgressBar.Horizontal”**設置進度條樣式為水平進度條,否則默認原型旋轉的進度條;
max設置進度條長度,這里設置為100。

2、java代碼:

聲明ProgressBar;int型的mprogress表示進度條進度;Handler對象處理子線程消息

通過id獲取布局中的ProgressBar;

progressBar=findViewById(R.id.progressbar);

用Handler模擬子線程耗時操作

mhandler=new Handler(){
? ? ? ? ? ? @Override
? ? ? ? ? ? public void handleMessage(@NonNull Message msg) {
? ? ? ? ? ? ? ? super.handleMessage(msg);
? ? ? ? ? ? ? ? if(msg.what==0x111){
? ? ? ? ? ? ? ? ? ? progressBar.setProgress(mprogress);//進度條未完成時,更新進度條
? ? ? ? ? ? ? ? }else {
? ? ? ? ? ? ? ? ? ? Toast.makeText(ProgressActivity.this,"耗時操作完成",Toast.LENGTH_LONG).show();
? ? ? ? ? ? ? ? ? ? progressBar.setVisibility(View.GONE);//設置進度條消失
? ? ? ? ? ?}
? ? ? ?}
? };

1、Handlerd需要重寫handleMessage()方法,參數(shù)為子線程傳來的msg.
2、msg.what==0x111表示消息是0x111,則進度條未完成,此時需要通過 progressBar.setProgress(mprogress)來更新進度條。
3、msg是其他時則表示進度條完成,這里只彈出Toast,也可以進行其他操作。

開啟子線程更新UI

new Thread(new Runnable() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void run() {
? ? ? ? ? ? ? ? while (true){
? ? ? ? ? ? ? ? ? ? //進度更新
? ? ? ? ? ? ? ? ? ? mprogress=doWork();
? ? ? ? ? ? ? ? ? ? Message message=new Message();
? ? ? ? ? ? ? ? ? ? if(mprogress<100){
? ? ? ? ? ? ? ? ? ? ? ? message.what=0x111;//進度條未完成時的message設置為0x111
? ? ? ? ? ? ? ? ? ? ? ? mhandler.sendMessage(message);//向handler發(fā)送消息
? ? ? ? ? ? ? ? ? ? }else {
? ? ? ? ? ? ? ? ? ? ? ? message.what=0x110;//進度條完成時的message設置為0x110
? ? ? ? ? ? ? ? ? ? ? ? mhandler.sendMessage(message);//向handler發(fā)送消息
? ? ? ? ? ? ? ? ? ? ? ? break;//進度完成跳出循環(huán)
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? }

? ? ? ? ? ? }
? ? ? ? ? ? private int doWork(){
? ? ? ? ? ? ? ? mprogress= (int) (mprogress+Math.random()*10);
? ? ? ? ? ? ? ? try {
? ? ? ? ? ? ? ? ? ? Thread.sleep(200);//線程休息200ms
? ? ? ? ? ? ? ? } catch (InterruptedException e) {
? ? ? ? ? ? ? ? ? ? e.printStackTrace();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? return mprogress;
? ? ? ? ? ? }
? ? ? ? }).start();

1、在子線程中通過doWork()方法模擬耗時操作
2、doWork()方法改變mprogress的值即可,用來模擬進度條進度的值
3、需要一個Message對象將消息返回給主線程,
4、當mprogress<100即進度條未完成時,設置message.what=0x111->對應當進度條未完成時,給主線程發(fā)送的message是0x111。
當mprogress>100即進度條完成時,設置message.what=0x110->對應當進度條完成時,給主線程發(fā)送的message是0x110。這里message.what的值可以隨意設置,不一定非要0x111,0x110。
5、 設置完message之后需要向主線程發(fā)送message,即mhandler.sendMessage(message);

以上運行即可實現(xiàn)一個簡單進度條。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Android中外接鍵盤的檢測的實現(xiàn)

    Android中外接鍵盤的檢測的實現(xiàn)

    這篇文章主要介紹了Android中外接鍵盤的檢測的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Kotlin基礎學習之Deprecated與Suppress注解使用

    Kotlin基礎學習之Deprecated與Suppress注解使用

    這篇文章主要給大家介紹了關于Kotlin基礎學習之Deprecated與Suppress注解使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Kotlin具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • Android實現(xiàn)側滑菜單DrawerLayout

    Android實現(xiàn)側滑菜單DrawerLayout

    這篇文章主要為大家詳細介紹了Android實現(xiàn)側滑菜單DrawerLayout,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • Android實現(xiàn)可拖拽的GridView效果長按可拖拽刪除數(shù)據(jù)源

    Android實現(xiàn)可拖拽的GridView效果長按可拖拽刪除數(shù)據(jù)源

    這篇文章主要介紹了Android實現(xiàn)可拖拽的GridView效果長按可拖拽刪除數(shù)據(jù)源,要實現(xiàn)的基本功能是長按,移到垃圾桶,刪除數(shù)據(jù),需要的朋友可以參考下
    2017-12-12
  • Android仿微信頂/底部菜單欄效果

    Android仿微信頂/底部菜單欄效果

    這篇文章主要介紹了Android仿微信底部菜單欄和頂部菜單欄實現(xiàn)效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-12-12
  • Android使用Handler實現(xiàn)打地鼠游戲

    Android使用Handler實現(xiàn)打地鼠游戲

    這篇文章主要為大家詳細介紹了Android使用Handler實現(xiàn)打地鼠游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Android UI設計與開發(fā)之ViewPager介紹和簡單實現(xiàn)引導界面

    Android UI設計與開發(fā)之ViewPager介紹和簡單實現(xiàn)引導界面

    這篇文章主要為大家詳細介紹了Android UI設計與開發(fā)之ViewPager介紹和簡單實現(xiàn)引導界面,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Android屏蔽軟鍵盤自動彈出的解決方案

    Android屏蔽軟鍵盤自動彈出的解決方案

    在編輯框輸入內容時會彈出軟鍵盤,而手機屏幕區(qū)域有限往往會遮住輸入界面,怎么實現(xiàn)這種效果呢?下面小編給大家分享了Android屏蔽軟鍵盤自動彈出的解決方案,需要的朋友參考下吧
    2017-01-01
  • Android獲取當前應用分配的最大內存和目前使用內存的方法

    Android獲取當前應用分配的最大內存和目前使用內存的方法

    今天小編就為大家分享一篇關于Android獲取當前應用分配的最大內存和目前使用內存的方法,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Android編程錄音工具類RecorderUtil定義與用法示例

    Android編程錄音工具類RecorderUtil定義與用法示例

    這篇文章主要介紹了Android編程錄音工具類RecorderUtil定義與用法,結合實例形式分析了Android錄音工具類實現(xiàn)開始錄音、停止錄音、取消錄音、獲取錄音信息等相關操作技巧,需要的朋友可以參考下
    2018-01-01

最新評論