【Android从零单排系列十六】《Android视图控件——ProgressDialog》

news/2024/11/14 21:33:13/

目录

前言

一 ProgressDialog基本介绍

二 ProgressDialog使用方法

三 ProgressDialog常见方法和属性

四 总结


前言

小伙伴们,在上文中我们介绍了Android视图组件AlertDialog,本文我们继续盘点,介绍一下视图控件的ProgressDialog。

特别注意:ProgressDialog在Android API级别26中已被废弃;取而代之的是ProgressBar和自定义布局来实现进度提示和等待效果

一 ProgressDialog基本介绍

ProgressDialog是是Android平台上的一个对话框,用于显示进度信息或操作的等待状态。

二 ProgressDialog使用方法

  1. ProgressDialog已在Android API级别26被弃用,推荐使用ProgressBar和自定义布局来代替。

  2. 若要创建一个ProgressDialog实例,可以使用ProgressDialog类的构造函数,并设置相关属性:

    ProgressDialog progressDialog = new ProgressDialog(context);
    progressDialog.setTitle("Title");  // 设置对话框标题
    progressDialog.setMessage("Message");  // 设置对话框消息内容
    progressDialog.setIcon(R.drawable.icon);  // 设置对话框图标
    progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); // 设置进度条样式,包括STYLE_SPINNER(圆形旋转)和STYLE_HORIZONTAL(水平进度条)
    progressDialog.setIndeterminate(true);  // 设置是否为不确定模式(即不显示具体进度)
    
  3. 可以使用setMax(int max)setProgress(int progress)方法设置最大进度值和当前进度值。若使用setIndeterminate(true)将其设置为不确定模式,则无需设置进度。

  4. 使用setCancelable(boolean cancelable)方法可以设置对话框是否可取消,默认为可以取消。

  5. 调用show()方法显示ProgressDialog,调用dismiss()方法关闭对话框。

  6. 若需要在ProgressDialog中显示自定义布局,可以通过setContentView(View view)方法设置自定义布局。

  7. 若要在后台线程中更新ProgressDialog的进度,需确保在UI线程中进行进度更新,可以使用runOnUiThread(Runnable action)方法或Handler来实现。

  8. 适用场景:ProgressDialog适合于在进行耗时操作时向用户展示当前进度或等待状态,以增强用户体验。

三 ProgressDialog常见方法和属性

  1. setTitle(String title):设置对话框的标题。
  2. setMessage(String message):设置对话框的消息内容。
  3. setIcon(int iconResId):设置对话框的图标,传入图标资源的ID。
  4. setProgressStyle(int style):设置进度条的样式,包括ProgressDialog.STYLE_SPINNER(圆形旋转)和ProgressDialog.STYLE_HORIZONTAL(水平进度条)。
  5. setIndeterminate(boolean indeterminate):设置是否为不确定模式(即不显示具体进度)。
  6. setMax(int max):设置进度条的最大值。
  7. setProgress(int progress):设置当前的进度值。
  8. setCancelable(boolean cancelable):设置对话框是否可取消,默认为可以取消。
  9. setCanceledOnTouchOutside(boolean canceledOnTouchOutside):设置点击对话框外部区域是否取消对话框。
  10. show():显示ProgressDialog。
  11. dismiss():关闭ProgressDialog。

四 总结

ProgressDialog已被废弃,但是以前很多老的项目有的还有这个组件,有些项目的bug也和这个有关,所以也整理了一下,建议如果搞不定,直接换ProgressBar和自定义布局。


http://www.ppmy.cn/news/649924.html

相关文章

Initialization failure:0x0000000C,电脑开机之后所有的软件都打不开了,一打开就报这个错,可以试试这种方法

Initialization failure:0x0000000C 突然就那么一天,打开电脑之后想点开软件(可能很多软件都打不开)但是不能启动,并且报了这个异常,那么可以试试以下方法: 键盘上 win键 r键 打开命令窗口(如果可以,请以管理员方式打开命令窗口,在开始菜单…

电脑可以上网,但是所有网页都打不开的解决办法

在使用电脑过程中,相信大家都遇到过,电脑可以联网但是,打不开网页的情况,今天我分享技巧教大家怎么解决这个问题 常见情况: 设置了代理服务器,导致网页打不开,电脑QQ使用的端口和访问互联网端口…

电脑浏览器可以打开网页,但所有软件都无法联网

试了网上各种重置网络配置的方法都不行,用360断网急救箱也无法修复,最后把防火墙关闭了软件就可以联网了。

服务器系统软件打开不显示界面,服务器软件为什么打不开可视化界面,子电脑都有一样的软件...

满意答案 ofemyj 2017.05.30 采纳率:51% 等级:8 已帮助:4416人 方法1、开机不断点击F8键,进入系统操作选单(如果是Win8,Win8.1,Win10系统,在看见开机画面后长按电源键关机,短时间内重复三次左右可以进入…

电脑上所有文件都打不开的解决方法和过程

【前期信息】 山东某公司,企业规模也不算小,但不是IT公司,所以未做很好的数据存储规划。公司的重要数据通过WINDOWS网络共享放在一台PC上,同时也连接打印机,有很多人员直接拷贝数据文件到这台PC上打印。前几天&#xf…

电脑上的c语言程序打不开,电脑软件打不开常用处理方法

电脑软件打不开怎么办?那么你知道电脑软件打不开常用处理方法么?接下来是小编为大家收集的电脑软件打不开常用处理方法,欢迎大家阅读: 电脑软件打不开常用处理方法 提示如下图: 【常用处理方法】 1、在“开始——运行”中,输入g…

python所有软件都打不开机怎么办_电脑软件,小编教你电脑所有软件都打不开怎么解决...

不知道大家在使用电脑的时候有没有遇到电脑所有应用程序软件都连不上网打不开的情况,可是自己电脑明明显示有网,可是电脑所有应用程序软件都连不上网打不开是怎么回事?又该如何解决?下面,小编给大家介绍电脑所有软件都…

计算机无法读取exe文件,电脑所有EXE文件都打不开的原因和多种解决方案

EXE文件是Windows的可执行文件,用于运行程序,正常情况下双击打开就可以运行了。今日,一些小伙伴说电脑所有exe文件打不开怎么回事?据调查一般都是由于病毒木马所致,这时候执行任何Exe文件都会出错,所有下文就给大家详解…