Java 为什么我总是遇到这个错误(无法解决)?
在我的一个类中,我遇到了这样一个错误:游戏无法解决或不是一个字段,当我启动应用程序时,它会说无法打开,请重试,为什么我一直遇到这个错误,R.java是否有问题Java 为什么我总是遇到这个错误(无法解决)?,java,android,Java,Android,在我的一个类中,我遇到了这样一个错误:游戏无法解决或不是一个字段,当我启动应用程序时,它会说无法打开,请重试,为什么我一直遇到这个错误,R.java是否有问题 public class GameActivity extends Activity { Grid myView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); myV
public class GameActivity extends Activity {
Grid myView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
myView = new Grid(this);
myView.setGame(new Game());
setContentView(myView);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.game, menu);//error occurring here
return true;
}}
r、 爪哇
/* AUTO-GENERATED FILE. DO NOT MODIFY.
*
* This class was automatically generated by the
* aapt tool from the resource data it found. It
* should not be modified by hand.
*/
package com.example.applicationprogrammingassignment;
public final class R {
public static final class anim {
public static final int slide_in_left=0x7f040000;
public static final int slide_out_left=0x7f040001;
}
public static final class attr {
}
public static final class dimen {
/** Default screen margins, per the Android Design guidelines.
Customize dimensions originally defined in res/values/dimens.xml (such as
screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here.
*/
public static final int activity_horizontal_margin=0x7f050000;
public static final int activity_vertical_margin=0x7f050001;
}
public static final class drawable {
public static final int ic_launcher=0x7f020000;
}
public static final class id {
public static final int action_settings=0x7f090003;
public static final int btnHelp=0x7f090002;
public static final int btnPlay=0x7f090000;
public static final int btnScore=0x7f090001;
}
public static final class layout {
public static final int activity_main=0x7f030000;
}
public static final class menu {
public static final int main=0x7f080000;
}
public static final class string {
public static final int action_settings=0x7f060001;
public static final int app_name=0x7f060000;
public static final int hello_world=0x7f060002;
}
public static final class style {
/**
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
Base application theme for API 11+. This theme completely replaces
AppBaseTheme from res/values/styles.xml on API 11+ devices.
API 11 theme customizations can go here.
Base application theme for API 14+. This theme completely replaces
AppBaseTheme from BOTH res/values/styles.xml and
res/values-v11/styles.xml on API 14+ devices.
API 14 theme customizations can go here.
*/
public static final int AppBaseTheme=0x7f070000;
/** Application theme.
All customizations that are NOT specific to a particular API-level can go here.
*/
public static final int AppTheme=0x7f070001;
}
}
每次修改
res
目录中的资源时,R.java都会自动编译,但如果其中一个xml文件中存在错误,则不会更新R.java
仔细检查所有XML文件是否有错误(Lint应该自动为您标记错误)。此外,请检查任何9个补丁,以确保它们是有效的。您可以暂时从名称中删除
.9
,以查看问题是否与9修补程序格式有关。我曾经遇到过这样的情况:我的9补丁中的一些边界像素不是纯黑色或纯白色,这导致R.java无法更新。如果你发布了整个R文件,似乎你还没有定义游戏菜单,找到的唯一菜单是main:
public static final class menu {
public static final int main=0x7f080000;
}
如果在其中正确定义了菜单项,则需要使用R.menu.main,或者在res/menu中创建一个game.xml菜单文件。正如您所见,R.javagetMenuInflater()中没有类似的资源“game”?getMenuInflater().充气(R.menu.main,menu)?请提供menu.xml src@Stan,getMenuInflater()。充气(R.menu,menu)?否,他将以“R.menu无法解析为变量”结束。user3267882,查看我的答案,创建一个game.xml或使用res/menu中的main.xml…@2Dee仅在第一种情况下使用。@斯坦,这就是我说的,我们的评论编辑交叉激发;)您在res/menu文件夹中创建了game.xml?这应该可以做到,但你可能需要清理/重建你的项目…然后检查Tenfour04的答案,你可能在你的res文件夹(xml文件,9patch图像)的某个地方有一个错误,阻止你的R.java被更新。。。