android studio透明背景(手机处理gif透明背景)
安卓封装的AlertDialog是非常好用的一个dialog,满足平时开发中的大部分工作。
但是毕竟开发中,dialog的样式必须要和app主题相符合,这就需要修改dialog的样式。
但是dialog并没有提供改变样式的方法,这就要我们自己去弄了。
网上提供了很多,有用style 有用java 反射去获取控件的。
但是研究源码可以看到,其实可以用代码去设置。
先看看不作任何修改的时候,alterdialog的显示。
ps:(Button可以在style中修改可以通过查看源码的方法找到,他的style里面button颜色对应的字段就是colorAccent)
当我们要修改title 或者message 或者button的颜色的时候,alterdialog并没有提供方法。
但是研究源码可以看到alterDialog提供了getButton();
源码在AlterDialog.class里面
源码位置在AlertController.class里面
原来这样就可以获取Button了,那么Button的字体和颜色就不成什么问题了。
注意必须dialog.show()之后才可以获取到Button不然获取到的Button为空的。
因为返回的参赛如mButtonPositive实例化是在setupButtons这个方法里面,而这个方法只有alterDialog在show的时候才会调用
源码位置在AlertController.class里面
那么问题来了message和title呢,alterDialog并没有提供这个方法,这个怎么获取,
其他上面Button的实例化已经提供了一个方法,看图
他的Button是通过findById去获取的,那么我们title和message不一样可以用findById么。
ctrl+鼠标左键,查看布局源码,找到title和message的id。如图
源码位置在alter_dialog.xml里面
源码位置在alter_dialog.xml里面
那么我们就可以通过Id去获取了
至于为什么我上面用android.R.id.message去获取id是因为项目中的ids.xml中已经有了message这个id了
控件获取到了修改字体和颜色 不就是小case了。
效果图
DialogTitle是继承TextView的所有上面的查找Title的控件 我直接转化成TextView
多研究源码收获还是很多的。
标签: 手机
- 随机文章
- 热门文章
- 热评文章
- 安卓酷影视频剪辑v1.1.0高级版
- 抖音怎么推广 抖音怎么推广自己产品
- 抖音短视频能赚钱吗 抖音短视频赚钱嘛
- 抖音短视频怎么玩特效屏幕带字的 抖音短视频屏幕上的字怎么弄
- 抖音营销怎么做,玩转抖音快速涨粉技巧
- 新手小白适合的短视频素材,高品质的素材这里拿
- 快手最新版8.0版本怎么下载,快手最新版哪里不同
- wish退款规则是什么?怎么处罚?
扫描二维码推送至手机访问。
版权声明:本文中部分文字、图片、音频、视频来源于互联网及公开渠道,仅供学习参考,版权归原创者所有! 如侵犯到您的权益,请及时通知我们!我们将在第一时间内删除。