在重新命名我的活动包之前,我可以在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
文件夹中存在gen
并且即使在我执行clean
之后也始终生成它。这只是在我更改包名后才开始发生的。我已经看了一些开源应用程序,它们将Activities
存储在一个单独的文件夹中,它们都导入了com.example.R。
因此,如果我决定将我的活动类放在com.example.activity
而不是com.example
中,我是否每次都必须手动导入com.example.R
?
答案 0 :(得分:1)
使用Eclipse Refactor实用程序重命名它。
右键单击包名称 - &gt;选择重构 - &gt;改名。
重命名包名称。 Eclipse将自动更新此包的所有引用。
希望它对你有所帮助。
答案 1 :(得分: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 ......否......
可能的解决方案: -
答案 2 :(得分:0)
呸!我的脑子一定是被炸了,不敢相信我错过了这个。所以是的,我现在必须手动导入R.java,因为它与我的活动所在的包不同。之前我没有必要这样做,因为R.java和MainActivity.java都在com.example下。现在R.java在
com.example
而MainActivity.java位于
com.example.activity