为什么 Java 文件在 android studio 中找不到 Drawable xml 文件?
Why Java file doesn't find the Drawable xml file in android studio?
我正在制作闹钟。在我的一个 java 文件中,我必须找到一个像这样的可绘制文件:layout.setBackgroundResource(R.drawable.view_touch_selector);
但是,它显示错误并显示 无法解析符号 view_touch_selector。我不知道为什么会这样,尽管我创建了相应的 view_touch_selector。
更新(在原始android的回答之后):
无法解析符号 'R' 错误! 每个文件中的 'R' 变为红色。
我认为问题是在生成的R.java文件中没有创建view_touch_selector。这是一种异常现象(可能很常见),因此您必须尝试下面列出的一个或多个步骤(从 easiest/short 开始到更长的时间排序)。如果执行步骤 1,则进行编译。然后尝试第2步,然后编译,依此类推。
来自 Android Studio,使用文件或菜单栏:
- Select 项目树中的 res/drawable 文件夹和 select 文件 -> 同步。
- 菜单 -> 构建 -> 重建项目
- 菜单 -> 构建 -> 清理项目,然后构建它。
- 文件 -> 使缓存无效/重新启动
- 菜单工具 -> Android -> 将项目与 Gradle 个文件同步
想法是让 Studio 正确地重新编译您的 xml 文件; Eclipse 也有类似的问题。
最后,如果一切都失败了,请重命名您的包,强制对所有项目文件进行评估。警告,重命名包并不容易。
我从来没有为解决此类问题而这样做。
EDIT: R.java file is at few places. The directories listed here is generated by Android Studio. R.java is at
- [project directory]\Application\build\generated\source\r\debug\com\example\android[package
name]
There are intermediate files generated by compiler including view_touch_selector.xml:
- [project directory]\Application\build\intermediates\res\debug\drawable
Another file to check, though this is rarely a problem I think, is
workspace.xml. When you select File -> Synch, workspace.xml is updated. File is at [project directory].idea. Again this is using
Android Studio.
In workspace.xml, it should include your xml files like:
layout
url="file://$PROJECT_DIR$/Application/src/main/res/layout/view_touch_selector.xml">
Between R.java and workspace.xml, they should be updated to the latest
date/time. And if you don't see the R.java file, then that's a major
problem related to directories. You may have to create a new project.
祝你好运,Tommy Kwee
我正在制作闹钟。在我的一个 java 文件中,我必须找到一个像这样的可绘制文件:layout.setBackgroundResource(R.drawable.view_touch_selector);
但是,它显示错误并显示 无法解析符号 view_touch_selector。我不知道为什么会这样,尽管我创建了相应的 view_touch_selector。
更新(在原始android的回答之后):
无法解析符号 'R' 错误! 每个文件中的 'R' 变为红色。
我认为问题是在生成的R.java文件中没有创建view_touch_selector。这是一种异常现象(可能很常见),因此您必须尝试下面列出的一个或多个步骤(从 easiest/short 开始到更长的时间排序)。如果执行步骤 1,则进行编译。然后尝试第2步,然后编译,依此类推。 来自 Android Studio,使用文件或菜单栏:
- Select 项目树中的 res/drawable 文件夹和 select 文件 -> 同步。
- 菜单 -> 构建 -> 重建项目
- 菜单 -> 构建 -> 清理项目,然后构建它。
- 文件 -> 使缓存无效/重新启动
- 菜单工具 -> Android -> 将项目与 Gradle 个文件同步
想法是让 Studio 正确地重新编译您的 xml 文件; Eclipse 也有类似的问题。 最后,如果一切都失败了,请重命名您的包,强制对所有项目文件进行评估。警告,重命名包并不容易。 我从来没有为解决此类问题而这样做。
EDIT: R.java file is at few places. The directories listed here is generated by Android Studio. R.java is at
- [project directory]\Application\build\generated\source\r\debug\com\example\android[package name]
There are intermediate files generated by compiler including view_touch_selector.xml:
- [project directory]\Application\build\intermediates\res\debug\drawable
Another file to check, though this is rarely a problem I think, is workspace.xml. When you select File -> Synch, workspace.xml is updated. File is at [project directory].idea. Again this is using Android Studio.
In workspace.xml, it should include your xml files like:
layout url="file://$PROJECT_DIR$/Application/src/main/res/layout/view_touch_selector.xml">
Between R.java and workspace.xml, they should be updated to the latest date/time. And if you don't see the R.java file, then that's a major problem related to directories. You may have to create a new project.
祝你好运,Tommy Kwee