2012-04-06 14 views
0
@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
super.onCreateOptionsMenu(menu); 
MenuInflater inflater = getMenuInflater(); 
inflater.inflate(R.menu.settings1, menu); 
return true; 
} 

我需要幫助。 「R.menu」中出現錯誤消息「菜單無法解析或不是字段」的錯誤。謝謝Android ::菜單無法解析或不是字段

+0

添加菜單佈局後是否清理了項目? – Jokahero 2012-04-06 14:56:46

+0

yes.i已經做到了,但仍然有錯誤..我的佈局也有問題:http://stackoverflow.com/questions/10044898/android-settings-layout – user1271277 2012-04-06 14:59:28

回答

1

如果在佈局中出現錯誤,則不會生成R文件,因此它是正常的獲取這個錯誤。

您需要首先糾正佈局中的錯誤,然後清理,然後R才能解決。

+0

謝謝..但我仍然堅持我的佈局..我無法弄清楚是什麼問題.. – user1271277 2012-04-06 15:15:18

0

您使用偏好XML作爲菜單引用這就是爲什麼reciving這個錯誤,以便使menu.xml文件或添加爲:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
super.onCreateOptionsMenu(menu); 
this.getMenuInflater().inflate(R.menu.options_menu, menu); 
return true; 
} 

,您可以動態地添加:

@Override 
     public boolean onCreateOptionsMenu(Menu menu) { 
      menu.add(Menu.NONE, Menu.FIRST + 1, 5, "??").setIcon(
        android.R.drawable.ic_menu_delete); 
      menu.add(Menu.NONE, Menu.FIRST + 2, 2, "??").setIcon(
        android.R.drawable.ic_menu_edit); 
      return true; 
     } 
     @Override 
     public boolean onOptionsItemSelected(MenuItem item) { 
      switch (item.getItemId()) { 
      case Menu.FIRST + 1: 
       startActivity(new Intent(getBaseContext(), SettingActivity.class)); 
       break; 
      case Menu.FIRST + 2: 
       Toast.makeText(getBaseContext(), "Menu Clicked", Toast.LENGTH_SHORT).show(); 
       break; 
      } 
     return false; 
    } 
0

檢查你的imports。如果您從某個其他項目(可能是庫項目)中導入某種.R文件(如import com.someotherpackage.R;),則需要刪除該行,然後清理項目。

現在,它可能引用了錯誤的.R文件,或者您在某個名稱的某個名稱中存在拼寫錯誤。