安卓AlertDialog源码分析

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

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

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

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

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

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

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

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

相关推荐
临期冰淇淋24 分钟前
MTK平台 安卓16 GMS报错修改
android·java·前端
mmsx25 分钟前
Android 模块化三件套:轻量组件化、宿主插件双形态、AIDL 隔离
android·网络·组件化·aidl
橙橙笔记34 分钟前
QT安卓软件的制作
android·git·qt·软件
mmsx1 小时前
Android 架构分层:MVVM 与 MVP 共存,网络层怎么切
android·策略模式·mvvm·mvp
mmsx2 小时前
Android 本地优先的三级语义理解降级链
android·数码相机·策略模式
朱涛的自习室3 小时前
我让 Gemini 4 当高管、DeepSeek 当员工,开了一家软件公司(Day 1)
android·前端·人工智能
事圆则缓3 小时前
Android 中的 Socket 和 WebSocket:从一条聊天消息看清区别
android·websocket·网络协议
mmsx4 小时前
Android 流式对话实现:分层门面与 SSE 手工解析
android·github·sse
墨狂之逸才5 小时前
Android扫码异常排查小白教程
android
恋猫de小郭5 小时前
Kotlin 2.5 的 Companion 改造,对 KMP 的重要升级
android·前端·flutter