2015-07-12 103 views
1

我花了很多时间来调整我的应用程序的字体大小,但我的应用程序仍然无法正常工作。调整Android文字大小

根据该参考文献,设备在4个组分割。 (ldpi,mdpi,hdpi,xhdpi)

所以developers.android建议我们创建dimens.xml文件来为不同的设备定义不同的字体大小。

我跟着步骤来调整应用程序的字体大小,但令人惊讶的是最终的结果是难以置信的。 AVDs工作正常虽然真实设备的行为是不寻常的,并且不可预知

定义

  • RES /值-MDPI:35dp

  • RES /值-HDPI:18dp

  • RES /值-xhdpi:13dp *

AVDs VS结果:

  • FWVGA-MDPI:正常

  • 的Nexus S-华电国际:正常

  • 的Nexus 4 xhdpi:正常

真实设备VS导致

  • 了Lg e445- MDPI:unusuall:非常大

如果我减少大小,以解决它,我将与三星相同的问题。星系S4。我该怎么办 ?

<dimen name="content_item_txtsize">13dp</dimen> 
    <dimen name="content_item_txtsize">18dp</dimen> 
<dimen name="content_item_txtsize">35dp</dimen> 
+0

字体大小应该使用'sp'而不是'dp'。除了希望文本的大小以外,还会考虑设备的默认字体配置。 – PPartisan

+0

“developers.android建议我们创建dimens.xml文件,为不同的设备定义不同的字体大小。” - 您可以发布一个链接到该页面的链接吗? – cygery

回答

3
  1. 使用sp而不是dp的字体大小。
  2. 对所有设备使用单个值应该足够。
0

你不应该使用的屏幕密度修饰符值的资源。

相反,你可以使用-w标识这意味着-smallest宽度 - 。

例如,您可能希望有在平板电脑上大文本,以便您可以使用它指出820 DP或更大的屏幕的宽度将使用的资源定义从该文件夹价值观w820dp文件夹。

所以,总的来说,片式值文件夹来区分手机和平板电脑。