-1

在我为我的活动重命名包之前,我可以毫无问题地在 Eclipse 中构建我的 Android 项目。

我将活动文件从

com.example.MainActivity

com.example.activity.MainActivity

然后我继续更新AndroidManifest.xml文件以反映活动的正确类名。这就是我的.classpath样子

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

每当我尝试构建我的项目时,它都会说

R cannot be resolved to a variable

有趣的是文件夹中R.java确实存在它,即使在我执行. 这只是在我更改包名称后才开始发生。我查看了一些开源应用程序,它们也将它们存储在一个单独的文件夹中,并且它们都导入了 com.example.R。gencleanActivities

因此,如果我决定将我的 Activity 类放入com.example.activity而不是com.example,我是否com.example.R每次都必须手动导入?

4

3 回答 3

1
if I decide to put my Activity classes in "com.example.activity" instead of "com.example", do I have to manually import com.example.R everytime?

手动导入 R ....否...

可能的解决方案:-

  • 检查您的布局是否有任何问题,例如您在 com.example.CustomizeButton 中使用自定义按钮并在您的布局中定义,因为包已更改确保标识符在 .xml 中也是正确的..
  • 还要检查问题部分,你会有所了解... Window-->Show View --> Problems..
  • 检查清单文件中的旧参考
  • 清理并构建您的项目(不用说......:P)
  • 重新启动 Eclipse 作为最后的手段,因为它会强制重新构建工作区
于 2013-06-27T05:12:49.513 回答
1

使用 Eclipse Refactor 实用程序重命名它。

右键单击包名称->选择重构->重命名。

重命名包名。Eclipse 将自动更新此包的所有引用。

希望它可以帮助你。

于 2013-06-27T05:10:37.483 回答
0

呸! 我的脑子一定是炸了,不敢相信我错过了这个。所以是的,我现在必须手动导入 R.java,因为它与我的活动所在的包位于不同的包中。以前我不必这样做,因为 R.java 和 MainActivity.java 都在 com.example 下。现在 R.java 在

com.example

而 MainActivity.java 在

com.example.activity
于 2013-06-27T05:21:04.487 回答