Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio 1.0.2无法解析除MainActivity之外的所有java源中的符号R_Java_Android_Android Studio - Fatal编程技术网

Android studio 1.0.2无法解析除MainActivity之外的所有java源中的符号R

Android studio 1.0.2无法解析除MainActivity之外的所有java源中的符号R,java,android,android-studio,Java,Android,Android Studio,我在com.example.example包下有MainActivity。我在com.example.example.fragments下有几个片段。我在com.example.example.utils下有几个类 虽然MainActivity还可以,但所有其他人在解决符号R时都有问题。我将其中一个移动到com.example.example,但仍然有问题,所以我将其移回com.example.example.utils,突然间它还可以,但后来我意识到它将com.example.example.

我在com.example.example包下有MainActivity。我在com.example.example.fragments下有几个片段。我在com.example.example.utils下有几个类

虽然MainActivity还可以,但所有其他人在解决符号R时都有问题。我将其中一个移动到com.example.example,但仍然有问题,所以我将其移回com.example.example.utils,突然间它还可以,但后来我意识到它将com.example.example.R添加到了导入部分。虽然它确实有效,但我删除了它,因为它是一种变通方法,而不是修复方法(MainActivity的部分中没有此导入)

我所有的XML文件都有一个绿色指示,所以我想不是这样的。我读了很多关于这个问题的帖子,但是没有任何帮助,既不清洁也不建造。还有什么会导致此错误


更新:显然,当移动com.example.example下的所有源时,它确实起作用,所以问题应该是:当源位于主com.example.example中的不同包下时,如何使其起作用。example实际上,这不是一个解决办法。如果查看清单,根级别标记具有
package=“com.example.example”
属性。这确实是正确的行为。这是应用程序包的名称空间,所有资源都位于该名称空间中。您的
MainActivity
没有此功能的原因是它位于包名称空间中,在您的情况下,它的包已经是
com.example.example

,因此为了让其他类在子文件夹下工作(我这样做完全是为了组织目的),我必须导入com.example.example.R?这是这种情况下的最佳实践?是的。搜索一下Android中的
R
是什么。因为它遵循普通的Java包约定,所以它只是一个包。不久前我也遇到过类似的情况。我已经接受了:)我创建了子文件夹,这样可以更清晰地查看内容所在的位置。我认为R比这更聪明:)