【问题标题】:Android R file and Java Sub-package: R can not be resolved to a variableAndroid R文件和Java子包:R不能解析为变量
【发布时间】:2015-03-06 01:22:31
【问题描述】:

为了更好地组织我的课程,我制作了一些子包(这是包的分层名称结构中的扩展)。

但令我惊讶的是,我得到了一个R cannot be resolved to a variable,就像我试图从这个项目的 R 文件中使用的每个资源一样。

Eclipse 的快速修复选项确实提供了为包(包含子包)导入特定 R file 的选项,但问题是在我创建的包中Eclipse 的New Application Project 向导,我根本不需要导入R file,我一直认为它包含了整个项目的资源。

但是现在创建子包后,我需要导入它。 所以出于好奇而询问,因为子包什么都不是(在 Java 中),而是包本身的分层名称结构中的扩展(reference),那么为什么不自动包含R file在子包中?

【问题讨论】:

  • 投反对票的人:我需要知道为什么我会对此投反对票?
  • 我不是“否决者”,但我认为是因为他们可能认为这是一个糟糕的问题,因为它很容易解决。我仍然是 Android 的初学者,所以是的...
  • 没有“子包”这样的东西,因为每个包都有自己的命名空间。 my.project.packagemy.project.package.hello 是分开的,它们不是同一个东西,但为了方便查看,它们可能以层次结构显示。

标签: java android eclipse package java-package


【解决方案1】:

R 与任何其他类一样只是一个类(除了 Eclipse 会为您创建它并使用您的资源 ID 对其进行更新)。

它包含在一个包中 - 就像其他所有类一样。

如果您想从不同的包中使用它,您必须导入它或使用完全限定名称 - 就像使用任何其他类一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-23
    相关资源
    最近更新 更多