【问题标题】:Android: Understand resource-id in R.javaAndroid:了解 R.java 中的资源 ID
【发布时间】:2014-03-02 07:25:03
【问题描述】:

有人知道resource-id 和R.java 的内部结构吗,或者至少可以参考我阅读更多相关信息?

resource-ids 的含义是什么?它们是apk中的某种地址吗?它们在编译后的 apk 中保存在哪里?

我尝试查找有关它的一些信息,但我得到的大部分信息都是导入它以及它的作用以及一般情况下的问题。

我为什么要问这些问题: 我最近尝试动态加载使用资源here 的apk 并查看this 我相信这甚至是不可能的。我想知道为什么。

【问题讨论】:

标签: java android r.java-file resource-id


【解决方案1】:

阿法伊克

  • Android 为每个资源分配 ID。

  • 项目中的 gen 文件夹包含 R.java 引用文件,该文件 包含这些生成的值。这些引用是静态整数 价值。

  • 如果添加新的资源文件,对应的引用是 在 R.java 文件中自动创建。

  • R.java 文件中的手动更改不是必需的,将 被工具覆盖。

    Android系统提供了访问对应的方法 通过这些 ID 获取资源文件。

例如,要在源代码中访问带有 R.string.yourString ID 的字符串,您可以使用在 Context 类中定义的以下方法。

getString(R.string.yourString) 

希望对你有帮助

【讨论】:

    【解决方案2】:

    【讨论】:

    • 不鼓励仅链接答案。详细说明你的答案
    • 感谢您的回答。我之前看过这些链接,但我仍然无法理解资源 ID 是否是某种寻址方式以及它们在编译后的 apk 中的保存位置
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-06
    • 1970-01-01
    • 2020-06-25
    • 1970-01-01
    • 1970-01-01
    • 2017-03-05
    相关资源
    最近更新 更多