【问题标题】:Android hdpi/mdpi/ldpi for Values folder?值文件夹的 Android hdpi/mdpi/ldpi?
【发布时间】:2012-03-09 18:34:33
【问题描述】:

Android 允许我们为可绘制文件夹定义 hdpi/mdpi/ldpi,以适应不同尺寸的屏幕/设备。我想知道是否可以为 Values 文件夹(甚至布局文件夹)应用相同的支持?原因是,我通常定义一个“sizes.xml”文件,其中包含我应用于边距和填充的标准 dp 大小。我也为文本的 sp 大小做同样的事情。我想根据手机 dpi 调整这些值。

【问题讨论】:

    标签: android xml dpi


    【解决方案1】:

    是的,你可以。就像这样:

    res/values/dimens.xml(default)
    res/values-ldpi/dimens.xml   (240x320 and nearer resolution)
    res/values-mdpi/dimens.xml   (320x480 and nearer resolution)
    res/values-hdpi/dimens.xml   (480x800, 540x960 and nearer resolution)
    res/values-xhdpi/dimens.xml  (720x1280 - Samsung S3, Micromax Canvas HD, etc) 
    res/values-xxhdpi/dimens.xml (1080x1920 - Samsung S4, HTC one, etc)
    res/values-large/dimens.xml  (480x800)
    
    res/values-large-mdpi/dimens.xml (600x1024)
    res/values-sw600dp/dimens.xml  (600x1024)
    res/values-sw720dp/dimens.xml  (800x1280)
    res/values-xlarge-xhdpi/dimens.xml (2560x1600 - Nexus 10")
    res/values-large-xhdpi/dimens.xml  (1200x1920 - Nexus 7"(latest))
    

    (来自: http://wiki.jikexueyuan.com/project/android-actual-combat-skills/multi-resolution-adapting-common-directory.html 警告:链接是中文的!!!要翻译,在页面上右击,在弹出的菜单中点击“翻译成英文”。)

    【讨论】:

      【解决方案2】:

      是的,我相信res/ 文件夹中的任何内容都可以使用“配置限定符”。例如,您可以拥有一个values-sw600dp-mdpi-land/ 文件夹。

      请参阅“使用配置限定符”: http://developer.android.com/guide/practices/screens_support.html#qualifiers

      我首先通过查看 Google 的 IOSched 应用示例代码注意到这一点,查看 res 文件夹: https://github.com/google/iosched/tree/master/android/src/main/res

      您会看到它们有“values-sw600dp-land”、“values-w400dp”和“values-v17”文件夹,仅举几例。

      【讨论】:

        【解决方案3】:

        由于 values 文件夹更适合用于根据设备分辨率设置不同的边距和字体大小,尽管一些 hdpi 设备从 values-xhdpi 获取值。 因此,使用 values-normal-hdpi 代替 values-normal-xhdpi 是更合适的答案。

        通过使用它,我们还可以通过在 values 文件夹中设置不同的 dps 和 size 来省略不同布局文件夹的需要,从而非常轻松地支持手机和平板电脑。

        【讨论】:

          【解决方案4】:

          是的,您可以根据标准修饰符定义要使用的文件。例如,在我的一个应用程序中,我为各种大小和方向定义了 styles.xml 和 strings.xml 文件,它们都可以作为预期的 values-large-hdpi 和 values-large-land-hdpi 等。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-09-04
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多