Android:禁用文本缩放(保持sp与dp相同)?

时间:2014-04-24 20:56:11

标签: android text graphics scaling

我正在研究(应该是)特定于设备的应用程序(理论上总是在Nexus 7上使用,但它可能是该设备的任一版本)。许多视图将包含一些文本和图形的组合,以有意义的方式定位。如果我使用“sp”来定义文本大小,并且用户全局更改“文本大小”,则文本将被缩放但图形不会 - 完全破坏视觉呈现。

我想使用dp而不是硬像素单元,因为不同版本的Nexus 7具有不同的显示密度。如果保持位置关系,例如,有人改变主意并且应用程序在其他显示器上运行,那也很好。 dp为图形处理此问题,但通过为文本设置不同的测量单位,它允许用户损坏整个演示文稿。

有没有办法禁用可选地应用于“sp”的缩放,以便图形(用dp定义)和文本(用sp定义)之间的关系不会被破坏?坦率地说,我想用dp定义文本但是找不到使用代码的方法(没有一个TypedValue常量似乎支持它)。

谢谢!

1 个答案:

答案 0 :(得分:1)

  

如果我使用" sp"要按照建议定义文本大小,并且用户全局更改"文本大小",文本将被缩放,但图形不会 - 完全破坏视觉演示。

用户控制的字体缩放在桌面GUI中已经存在了很长时间,并且在Web设计中突出显示,在浏览器中使用用户控制的字体缩放。也许你可能会考虑学习如何处理文本大小的变化,这是无数开发人员在你之前所做的。

  

坦率地说,我想用dp定义文本但是找不到使用代码的方法(没有一个TypedValue常量似乎支持它)。

dp也缩写为dip,代表与密度无关的像素。相应的TypedValue is COMPLEX_UNIT_DIP