Dialog整体架构详解

本文详细探讨了Android中Dialog的架构,重点分析了AlertDialog及其子类如ProgressDialog的内部工作机制。通过源码解析,揭示了Dialog的创建过程,包括ProgressDialog的构造方法、show()方法以及AlertController在其中的角色。同时,介绍了如何使用AlertDialog.Builder来定制Dialog。
摘要由CSDN通过智能技术生成

在Android中,Dialog是一个非常重要的UI, 它可以方便的给用户提示,用最简洁的方式向用户展示信息, 以下的图片是Dialog的一个整体架构,通过它,可以总体对Dialog有一个很清晰的认识.

从这张图中可以看到,Dialog为父类, 其下有最重要的, 我们最常用的AlertDilog, 而AlertDialog的子类,则是由DatPicker, ProgressDialog,TimePick来组成.
这几个子类都是我们在程序开发中最常用的,因此要重点理解, 我们可以试着想像一下,如下几个问题的答案
<1> 怎么产生一个Dialog?
<2> Dialog与Activity是什么关系? 为什么显示Dialog的时候,Activity就失去了焦点,不能被点击,在系统内部到底是怎么管理他们的关系的?

我们以ProgressDialog为例, 通过分析其源码,让我们彻底理解它的内部运行机制

<1> 怎么产生一个ProgressDialog?
通过打开ProgressDialog的源码, 可以看到它有2个构造方法,

ProgressDialog(Context context)

ProgressDialog(Context context,int theme)

参数解释: context:说明它是依靠Context,必须通过一个Context来创建它, 第二

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值