【问题标题】:Android resources "best match" fallback logicAndroid 资源“最佳匹配”回退逻辑
【发布时间】:2012-05-21 12:41:01
【问题描述】:

我已经阅读了有关Android Resources 的文档,并且我想我已经理解了 android 用来识别应该首先在哪个目录中搜索特定资源的最佳匹配逻辑。假设 drawable-hdpi , drawable-en-port 和 drawable-en* 匹配当前设备配置,drawable-en-port 是最佳匹配目录.. 我的问题是, 如果在 drawable-en-port 中没有找到 drawable,系统是直接在 drawable 中查找还是在第二最佳匹配 drawable 中查找-en 然后在第三个最佳匹配 drawable-hdpi 以此类推,直到达到 drawable?我想它是这样工作的,但我没有发现它在文档中明确说明(除非我读得太快,你肯定会杀了我:))。

【问题讨论】:

    标签: android drawable directory-structure android-resources


    【解决方案1】:

    是的,它首先出现在 drawable-en 中,然后是 drawable-hdpi,因为语言限定符具有更高的优先级。如果仍未找到值,则搜索 drawable 目录。它符合: How Android Finds the Best-matching Resource

    如果drawable-en 包含匹配资源,那么drawable-hdpidrawable 将根据算法的第4 步被淘汰。

    【讨论】:

      【解决方案2】:

      我读了介绍部分

      assume the following drawable directories each contain different versions of the same images
      

      在您的示例中,Android 将忽略 drawable-en-port 文件夹,因为其中没有该可绘制名称。它只会查看具有该可绘制对象的文件夹,因此会选择最匹配的文件夹。如果没有具有匹配配置和图像的文件夹,它只会选择“可绘制”。

      【讨论】:

        猜你喜欢
        • 2023-03-16
        • 1970-01-01
        • 1970-01-01
        • 2013-08-23
        • 1970-01-01
        • 2017-03-02
        • 2016-10-24
        • 1970-01-01
        • 2011-08-08
        相关资源
        最近更新 更多