使用setMessage()将文本作为CharSequence放入AlertDialog框会导致文本以默认系统大小显示。
但是,如果文本是TextView对象,则使用setView()添加它,结果输出是一个很小的字体。
我知道我可以为TextView对象定义一个特定的字体大小(毕竟这是它的重点),但我如何/在何处告诉项目使用与setMessage()使用的相同的字体大小设置?由于setMessage()的结果字体大小取决于用户在其设备上设置的系统设置,因此我希望能够满足视障用户的需求,而无需使用我的字体大小菜单。应用
或者,如果有人知道使用setMessage()将SpannableString推送到AlertDialog的方法,那么这也是一个合适的解决方案......
答案 0 :(得分:1)
您可以将18sp
的字体大小设置为Medium size
(由setMessage()
使用),并且对于用户偏好,sp
本身将根据它
答案 1 :(得分:0)
执行此操作以获取默认字体大小:
float size = new TextView(this).getTextSize();
然后将值设置为您正在使用的TextView对象。