android – 确定用户字体大小选择

我有一个 Android应用程序,如果用户将其字体大小设置为超大(通过设置 – >显示 – >字体大小在4.0及更高),需要进行一些调整.

我有一个简单的方法来告诉用户的字体大小偏好是什么

更新:
在我的layout.xml中,我有类似于设置按钮的行

android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold"
android:typeface="sans"

请注意,我没有直接设置字体大小.除了超大设置外,此布局在所有情况下均可正常运行.在这种情况下,由于空间限制,它会使按钮的文本换行为2行.

我的目标是在特大号的情况下做一个轻微的措辞改变,以便它不会换行

解决方法

你应该可以查询系统的 FONT_SCALE参数.我自己没有用它,但我想它检索它的值看起来有点像这样:
float fontScale = Settings.System.getFloat(context.getContentResolver(),Settings.System.FONT_SCALE)

但是,我还想指出,通常你不应该直接处理这个值.相反,使用sp单位作为文本内容,这样您就不必担心自己调整用户首选的字体大小,而是让系统处理它.

另请参阅:Why should we use sp for font sizes in Android?

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...