Android: 不同的布局支持不同的fontSize

Android: different layout to support different fontSize

用户可以在系统设置中更改字体大小,我在 xml 布局中使用 "sp"。

Android使用不同的文件夹来支持多屏,有什么方法可以在用户更改字体大小时更改布局?

像这样:

res
   layout
   layout-bigfont
   layout-normalfont

抱歉,答案是否定的。 providing alternative resources 上的 Android 文档有一个完整的列表,列出了绑定资源时考虑的配置属性。不幸的是,文本缩放不是属性之一。

您最好自己检测字体缩放并在代码中加载替代资源:

float scale = getResources().getConfiguration().fontScale;

较大的文本将有 scale > 1