我正在使用eclipse并从书中学习android。我正在复制代码以了解菜单,并且我得到了这两个错误,并且无法找出原因。
@Override
public boolean onCreateOptionsMenu(Menu menu){
menu
.add(Menu.NONE, MENU_ADD, Menu.NONE, "Add")
.setIcon(android.R.drawable.ic_menu_add);
menu
.add(Menu.NONE, MENU_RESET, Menu.NONE, "RESET")
.setIcon(android.R.drawable.ic_menu_refresh);//error here.
这是ic_menu_refresh无法解析或不是字段错误 ic_menu_refresh不会显示为ic_menu_add所做的选项之一。
获取添加无法解决或不是字段错误
private void add(){
final View addView=getLayoutInflater().inflate(android.R.layout.add, null);//add is the source of the error.
以下是我正在使用的库
package com.commonware.android.menus;
import java.util.ArrayList;
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
如果需要,我可以包含其余的代码
答案 0 :(得分:2)
在第一种情况下,您最有可能尝试使用sdk中不是公共资源的资源。您可以随时从机器上的SD卡中取出它并将其放入您的抽屉中。
你在第二种情况下的错误是你使用的是android.R而不仅仅是R. android.R是sdk中包含的所有android可用资源。当你只使用R.something时,你引用你的程序R class来寻找你的资源。确保如果你只是把那个eclipse没有在类的导入中导入实际的android.R。您想要在您正在使用它们的类的顶部导入yourpackagename.R。