【问题标题】:android drawable folder for large screens用于大屏幕的 android 可绘制文件夹
【发布时间】:2014-02-13 18:07:56
【问题描述】:

我在 drawable-hdpi(大图像)和 drawable-mdpi(小图像)中有图像

我在 Kindle fire 上打开了我的应用程序(它从 layout-large 获取布局)并使用来自 drawable-mdpi ,有什么方法可以让应用在屏幕尺寸很大时从 drawable-hdpi 获取图像?

谢谢

【问题讨论】:

    标签: android android-layout


    【解决方案1】:

    我认为您正在寻找的是使用configuration qualifiers.

    看来您真的误解了这些文件夹的作用。 您的 android 将根据其屏幕大小或像素密度选择文件夹。

    您的 Kindle Fire 具有中等像素密度和大屏幕。因此,它从具有给定限定符的 res 文件夹中选择其资源。

    res/layout-large/my_layout.xml

    图片来自

    res/drawable-mdpi/my_icon.png
    

    你不能告诉你的 kindle 从 hdpi 文件夹中获取图像,因为它没有高像素密度。

    所以你可以创建一个名为

    的文件夹
    res/drawable-large-mdpi/ 
    

    专门用于您的 Kindle Fire 设备。

    或者只是确保正确的图像位于正确的文件夹中。

    编辑:尺寸限定符已从 3.2 中弃用。

    虽然已弃用,但它们仍然有效。虽然结果可能不是预期的(例如:5" 和 7" 被视为相同的尺寸 - 大 - 仍然有差异)。所以他们添加了 dp 限定符以在 3.2 之后使用。哪个好得多。 developer.android.com/guide/practices/… 有点像媒体查询

    【讨论】:

    • 您可以创建一个名为 drawable-large 的文件夹,让它根据屏幕尺寸或 drawable-large-mdpi 获取您的图像,用于中等像素密度的大屏幕(您的 kindle fire 具有)。这是不好的做法,因为您应该根据屏幕密度加载图像。
    • 谢谢我现在明白了,我使用 res/drawable-large、drawable-small 和 drawable-normal 来使用图像谢谢
    • 要找出您的设备喜欢的文件夹,请使用名为“ScreenInfo”的应用程序,它会显示您设备的 DPI 和屏幕类别。
    • 大小限定符在 3.2 及更高版本中已弃用。 res/drawable-large-mdpi 是否不受此限制,或者您有这些版本的替代品吗?
    • 虽然已弃用,但它们仍然有效。虽然结果可能不是预期的(例如:5" 和 7" 被视为相同的尺寸 - 大 - 仍然有差异)。所以他们添加了 dp 限定符以在 3.2 之后使用。哪个好得多。 developer.android.com/guide/practices/… 它有点像媒体查询..
    【解决方案2】:

    使用 Android 的新限定符更新此内容。

    在 3.2 或更高版本中不推荐使用大小限定符,例如 drawable-large

    要使用支持多种布局和密度的最新方法,您可以使用以下方法:

    res/drawable-sw600dp-mdpi

    在本例中,sw600dprepresents the smallest width available to the activity in density-independent pixels,600dpin this case. This is deemed as being a little more fitting for device-specific layouts and drawables as the width is provided instead of a generalized size grouping such aslarge`。

    还有可用宽度和高度的新选项,完整信息可在此处获得:Supporting Multiple Screens

    【讨论】:

      【解决方案3】:

      所有限定符都按照它们在Table2 中出现的顺序进行处理。

      阅读How Android Finds the Best-matching Resource

      【讨论】:

      • 我必须将 drawable-hdpi 更改为 drawable-large-hdpi?它不起作用
      • 不要改成drawable-large-mdpi,因为你的Kindle Fire有大屏和中等密度。 (它没有高密度,所以它没有从 hdpi 限定符中得到它。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-14
      • 1970-01-01
      相关资源
      最近更新 更多