我有以下问题。在我的应用程序中,我必须实现一个设置功能,允许用户设置应用程序中所有字体大小和所有视图的大小。
我所有视图的尺寸都是在sp
中定义的,所以如果用户去系统设置并改变字体大小,我所有的视图都会对此做出反应。
现在我必须在不改变系统设置的情况下实现这个功能。
我读到:android在运行时动态改变样式Android: application-wide font-size preference
,但这只能管理TextView和所有其他视图的所有变化,扩展TextView如EditText, Buttons…
所以我的问题是:是否有可能以编程方式改变SP中使用的比例因子?
提前感谢!
经过更多的谷歌搜索,我终于找到了我的问题的解决方案。要改变比例因子,我现在使用getResources().getDisplayMetrics().scaledDensity
我不确定它是否适用于所有设备,因为它在这里提到: