【问题标题】:values folder for dimen.xml for small screen size用于小屏幕尺寸的 dimen.xml 的 values 文件夹
【发布时间】:2014-07-21 13:03:38
【问题描述】:

我需要根据设备的屏幕尺寸设置自定义边距和 textSize。我在网上搜索过,但没有找到任何我需要的答案:

对于较小的屏幕尺寸,我应该将尺寸值存储在哪里,例如 mdpi 屏幕。

请帮忙

提前致谢!

【问题讨论】:

  • 使用dimen.xml 将尺寸存储在不同分辨率的文件夹中
  • 是的,我知道。但是小屏幕的“值”文件夹的名称应该是什么。我想要这个名字。
  • 这取决于你使用的设备

标签: android android-layout


【解决方案1】:

我对这个问题有点困惑。并不是说我是专家,而是屏幕的大小并不能直接转化为像素密度。您在谈论小屏幕,然后随机引用 mdpi 屏幕。因此,为了清楚起见,您可以拥有一个具有“正常”像素密度屏幕 (mdpi) 的 Android 归类为小屏幕的设备,但您也可以拥有具有相同像素密度的大屏幕。所以...

  1. 如果您想为具有正常像素密度的“小”屏幕定义自定义尺寸。您可以在values-small-mdpi 文件夹中添加一个dimens.xml 资源文件

  2. 如果您只想定位 mdpi 屏幕,则将 dimens.xml 文件添加到 values-mdpi 文件夹中

  3. 最后,如果您只想定位小屏幕,请将其添加到 values-small 资源文件夹

您有很多资源文件夹限定符可供选择...因此请注意不要让您的项目因大量此类文件而膨胀。下面的链接说明了如何使用它们、限定符的顺序和优先级...

http://developer.android.com/guide/topics/resources/providing-resources.html

此外,关于文本大小,您通常不必担心屏幕的像素密度……如果您正在渲染背景图像,您会担心。对于文本大小,您需要确保指定与比例无关的单位 (sp)...这就是您需要担心的全部。

【讨论】:

  • 非常感谢您的完美回答。我的答案在第 3 点。
  • 我把dimens 放在values-small 里,但它不起作用
  • @david 确实可以配对。从 API 级别 4 开始。确保您阅读了文档并理解您阅读的内容
  • @Leo 是的,对此感到抱歉,我读到了 sw320dp 的其他问题,它级联到所有值我认为这个答案与它相矛盾,但在阅读了优先顺序之后,我意识到这个答案是不同的目的,所以我认为你的答案是正确的。
猜你喜欢
  • 2012-08-26
  • 1970-01-01
  • 2016-03-30
  • 1970-01-01
  • 1970-01-01
  • 2018-02-11
  • 2012-03-27
  • 2015-02-09
  • 1970-01-01
相关资源
最近更新 更多