安卓AlertDialog源码分析

首先我们来看个问题:AlertDialog怎么更改按钮颜色

有时我们遇到产品或者视觉设计需要改变AlertDialog的按钮颜色时候,我们先来看一下AlertDiglog简单使用方法。

我想改变"没希望"这个按钮的颜色值,目前AlertDialog的按钮颜色值是根据主题色来确定的,但是我不想改变主题色,会影响其他一些控件。具体代码实现:

需加在dialog.show之后,具体原因可以看注释。

下面再看个问题,我点击"能"我不想对话框消失,我想一直看这进大厂的目标。

默认AlertDialog点击按钮都会消失,不管是PositiveButton还是NegativeButton的,那么我们怎么实现呢?我们来看代码

我们给PositiveButton按钮设置了监听器为Null,取代他的是View.OnClickListener然后就弹出Toast了

下篇我们来分析源码原理。

相关推荐
监督者修7 分钟前
从零构建 GIS 数据引擎:方案驱动架构的设计与实践
android·架构·kotlin
Yoke12 分钟前
从零到三端:用 Kotlin Multiplatform + Compose 构建跨平台财务追踪应用
android
gxgldyh23 分钟前
Android Framework源码解析(六):Launcher3 启动流程详解——AMS 如何拉起系统桌面?
android
XiaoLeisj24 分钟前
HandlerThread 与 IntentService 使用及源码解析
android·handler
我命由我1234510 小时前
Android Studio - Android Studio 自定义预览尺寸
android·java·ide·java-ee·android studio·android-studio·android runtime
取个名字太难了~12 小时前
越用越便宜,越用越强大:影像 SDK 的边际成本递减与网络效应实践
android·数码相机·美颜·相机连接·demu
AFinalStone16 小时前
Android 7系统网络(四)Native层(下)—netd Controller详解
android·网络
爱笑鱼16 小时前
Handler(一):post 之后,Runnable 到底在哪个线程执行?
android
木木子2217 小时前
[特殊字符] 音乐播放器——状态驱动的多媒体控制
android·开发语言·华为·php·harmonyos
雨白17 小时前
C 语言基础:结构体、联合体与枚举
android