Java 无法解析符号';项目';
我试图使我的菜单项转到不同的活动,所以我试图覆盖每个活动上选择的OnOptions项,但我得到了这个错误 还可以在每一个“R.id.ItemX”案例中获得“需要常量表达式” 用这个Java 无法解析符号';项目';,java,android,android-studio,menuitem,Java,Android,Android Studio,Menuitem,我试图使我的菜单项转到不同的活动,所以我试图覆盖每个活动上选择的OnOptions项,但我得到了这个错误 还可以在每一个“R.id.ItemX”案例中获得“需要常量表达式” 用这个 menu.getItemId() 而不是这个 item.getItemId() 示例代码 @Override public boolean onOptionsItemSelected(MenuItem menu){ switch (menu.getItemId()){ // ERROR
menu.getItemId()
而不是这个
item.getItemId()
示例代码
@Override
public boolean onOptionsItemSelected(MenuItem menu){
switch (menu.getItemId()){ // ERROR IS HERE ON THE WORD 'item', THE REST WORKS FINE.
Intent goToNextActivity = new Intent(getApplicationContext(), MainActivity.class);
case R.id.Item1:
goToNextActivity = new Intent(getApplicationContext(), MainActivity.class);
startActivity(goToNextActivity);
break;
case R.id.Item2:
goToNextActivity = new Intent(getApplicationContext(), VidPage.class);
startActivity(goToNextActivity);
break;
case R.id.Item3:
goToNextActivity = new Intent(getApplicationContext(), DatePage.class);
startActivity(goToNextActivity);
break;
}
return true;
}
用这个
menu.getItemId()
这将返回您的项目id,也会建议这样做<代码>项不在问题中定义的方法范围内<代码>菜单类型
菜单项
是如何声明项
的?它没有在您的方法中声明。
@Override
public boolean onOptionsItemSelected(MenuItem menu){
switch (menu.getItemId()){ // ERROR IS HERE ON THE WORD 'item', THE REST WORKS FINE.
Intent goToNextActivity = new Intent(getApplicationContext(), MainActivity.class);
case R.id.Item1:
goToNextActivity = new Intent(getApplicationContext(), MainActivity.class);
startActivity(goToNextActivity);
break;
case R.id.Item2:
goToNextActivity = new Intent(getApplicationContext(), VidPage.class);
startActivity(goToNextActivity);
break;
case R.id.Item3:
goToNextActivity = new Intent(getApplicationContext(), DatePage.class);
startActivity(goToNextActivity);
break;
}
return true;
}