[Android学习]对话框在android6.0以上版本不显示按钮文字
2017-07-25 15:18
295 查看
最近半个月又写点android了(时隔2年半)
事情是这样的.用Weex做的App 的对话框在某些手机上对话框能显示按钮,有些不能显示
如图
![](http://img.blog.csdn.net/20170725141442213?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHE4MzYyMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
锁定问题
1)是否修改过对话框Native的对话框代码?是否修改过对话框调用Weex的JS代码?
2)哪些手机能再现?哪些不能?
3)能再现该问题的手机 Weex的Playground的代码是否正常运行?该正常运行代码能否在自己工程里面正常运行?
锁定结果
1)没有修改过Native的对话框代码也没有修改过Weex的JS代码,
2)android版本6.0以上的手机再现,6.0以下的手机可以正常显示
3)6.0以上的WeexPlayground代码能正常运行.在自己工程里面不能正常运行.
调查路线
1)调查对话框在6.0以上有什么变化?
2)自己工程依赖的控件包是否是指定的正常的包?
2)查看控件的布局边界该按钮是否存在。
调查结果
1)5.0以上android的增加了权限询问,很多文档上说需要设置这两权限。
删除这两个权限设置后发现也是可以运行的。
android权限说明请参考: 链接
2)自己工程包的依赖的对话框的包是正常的,有些博客上说自己依赖的包版本不是5.0以上,导致对话框文字不能显示。
查看自己的包依赖如下:android.support.v7.app.AlertDialog
3)打开设置-开发者选项-布局边界,Alert的控件的边界是存在的,按下按钮颜色是灰色以及文字都可以显示出来。
调查关键位置:
既然控件在,按下的颜色也有,则说明只是按钮的文字的颜色问题。
如果对话框没有设置自己的主题颜色,则采用的是AppTheme
在Styles.xml中设置Style。也可以直接使用AppTheme
![](http://img.blog.csdn.net/20170725151511336?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHE4MzYyMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
结果在Color.xml的数值里面 colorAccent为FFFFFF的原因,导致按钮颜色看不见。
修改[b]colorAccent的值为主体颜色后对话框显示正常。[/b]
扩展:
增加自己的Style:
https://isming.me/2015/08/31/modify-alert-style/
以及AppTheme中的各个变量对应的内容
http://www.aoaoyi.com/archives/623.html
参考页面:
http://blog.csdn.net/s1991721/article/details/76054028
事情是这样的.用Weex做的App 的对话框在某些手机上对话框能显示按钮,有些不能显示
如图
锁定问题
1)是否修改过对话框Native的对话框代码?是否修改过对话框调用Weex的JS代码?
2)哪些手机能再现?哪些不能?
3)能再现该问题的手机 Weex的Playground的代码是否正常运行?该正常运行代码能否在自己工程里面正常运行?
锁定结果
1)没有修改过Native的对话框代码也没有修改过Weex的JS代码,
2)android版本6.0以上的手机再现,6.0以下的手机可以正常显示
3)6.0以上的WeexPlayground代码能正常运行.在自己工程里面不能正常运行.
调查路线
1)调查对话框在6.0以上有什么变化?
2)自己工程依赖的控件包是否是指定的正常的包?
2)查看控件的布局边界该按钮是否存在。
调查结果
1)5.0以上android的增加了权限询问,很多文档上说需要设置这两权限。
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />对这两个权限抱有疑问,文档上面说的是:只有该对话框是处于所有App顶层的时候才需要,一般App不需要。
删除这两个权限设置后发现也是可以运行的。
android权限说明请参考: 链接
2)自己工程包的依赖的对话框的包是正常的,有些博客上说自己依赖的包版本不是5.0以上,导致对话框文字不能显示。
查看自己的包依赖如下:android.support.v7.app.AlertDialog
3)打开设置-开发者选项-布局边界,Alert的控件的边界是存在的,按下按钮颜色是灰色以及文字都可以显示出来。
调查关键位置:
既然控件在,按下的颜色也有,则说明只是按钮的文字的颜色问题。
如果对话框没有设置自己的主题颜色,则采用的是AppTheme
在Styles.xml中设置Style。也可以直接使用AppTheme
结果在Color.xml的数值里面 colorAccent为FFFFFF的原因,导致按钮颜色看不见。
修改[b]colorAccent的值为主体颜色后对话框显示正常。[/b]
扩展:
增加自己的Style:
https://isming.me/2015/08/31/modify-alert-style/
以及AppTheme中的各个变量对应的内容
http://www.aoaoyi.com/archives/623.html
参考页面:
http://blog.csdn.net/s1991721/article/details/76054028
相关文章推荐
- android 6.0 以上版本不显示按钮文字
- MFC学习之 在按钮上加图标与文字共同显示
- 【Android开发学习33】PopupWindow之显示顶层对话框
- 使Android应用的AlertDialog对话框中的按钮显示为ImageButton图标,并设置相应
- 黑马程序员之WinForm编程基础学习笔记:用户在文本框1,2中输入两个数,点击按钮,在文本框3中显示从文本框1中的数字到文本框2中的数字之间的累加和。如果1或者2为错误的数据格式,则弹出对话框提示错
- Android对话框的高级设置《二》设置对话框按钮的透明度和对话框的在屏幕上的显示位置
- 最新历史版本 :android--设置TextView部分文字的颜色和背景(高亮显示)
- Android学习 之 ColorStateList按钮文字变色
- 菜鸟Android学习之路28——AlertDialog(4)显示带多个选列表项的对话框
- supermap学习系列(六)——上一篇的另一种版本(鼠标单击或者移动,高亮显示并弹出对话框)
- 点击按钮之后仍然显示对话框--Android
- Android(1.5及以上版本) 开机图片/文字/动画分析
- Android(1.5及以上版本) 开机图片/文字/动画分析[转载、修改部分内容]
- MFC学习之 在按钮上加图标与文字共同显示
- 最新历史版本 :android--设置TextView部分文字的颜色和背景(高亮显示)
- Android学习 - 4.0以上的系统,对话框界面一碰屏幕,对话框就消失了解决方法
- android 文本输入框文字改变监听-输入值显示,没有值删除按钮消失
- 最新历史版本 :android--设置TextView部分文字的颜色和背景(高亮显示)
- 解决Android 4.0以上版本中OptionsMenu菜单不显示ICON图标的问题
- Options Menu在android2.3.x及以下版本与android3.0以上版本显示原理的区别