你是不是也遇到了两个app,同样的AlertDialog代码,安装在同一台手机上,居然有两种风格?是的话,就点进来看看吧

AlertDialog样式与屏幕适配

当排除了一切可能,剩下的就必定也只能是真相。 —— [江户川剑哥哥]

最近两天被突如其来的需求给整惨了,本来好不容易给整个项目的提示框(粗略统计有500多处)统一成了MaterialDialog,结果产品一句话又要改回AlertDialog,其中的辛酸与愤懑暂且不表,倒是在改的过程中遇到了个很郁闷的问题,不吐不快。

先简单描述下问题,手上有两个app,在用一模一样的代码写了个AlertDialog的情况下,展示出来的风格居然大相径庭,如图:

当时对比了好久,代码就不说了,都是一样的,然后想到可能是主题的影响,结果从清单文件点进去一看,两个app的主题风格也是用的同一种,这就奇怪了,明明是一样的代码,一样的主题,怎么就显示出来的风格就不同了呢?

排查来排查去,也没发现啥头绪,就在一筹莫展的时候,我在自己手机上装了下两个app,发现在手机上居然又一样了,都是黑色的那个风格,这时候我才意识到,可能是屏幕适配的问题,因为我们项目的app基本都是给pad使用的,相应的,很多资源文件都适配甚至是只适配了pad,然后我又仔细看了下代码,这时候才发现,原来其中一个app的主题做了五种适配,而另一个只有三种(原谅我当时只随机对比了其中的几种),就像下面两张图片这样:api和屏幕的适配
只有api的适配
这时候我再点进values-large下的styles文件一看,才发现,原来唯独在这里,主题风格是

<style name="AppTheme" parent="android:Theme.Holo.Light">

而其他values文件夹下的styles文件里都是

<style name="AppTheme" parent="android:Theme.Light">

至此,问题解决。。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值