带操作栏sherlock的菜单

我需要一个示例或教程,介绍如何使用操作栏sherlock添加菜单

当我使用简单的菜单与导入

import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; 

我打电话的时候

 @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.settings_menu, menu); return true; } public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.goToSettings: startActivity(new Intent(this, SetPreference.class)); return true; default: return super.onOptionsItemSelected(item); } } 

然后我得到了无法覆盖SherlockActivity错误的最终方法。

您必须使用com.actionbarsherlock.view包中的MenuMenuInflaterMenuItem类:

 import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getSupportMenuInflater(); inflater.inflate(R.menu.settings_menu, menu); return super.onCreateOptionsMenu(menu); } 

BTW, ActionBarSherlock包含很多样本。

我在上面使用了@StenaviN的答案,但遇到了onContextItemSelected的问题。 这篇post为我解决了。

基本上,你只需要使用

 @Override public boolean onContextItemSelected(android.view.MenuItem item) { /* ... */ } 

代替

 @Override public boolean onContextItemSelected(MenuItem item) { /* ... */ } 

我在上面使用了@Matt的答案但遇到了onContextItemSelected的问题。

基本上,你只需要使用

 @Override public boolean onContextItemSelected(com.actionbarsherlock.view.MenuItem item) { /* ... */ } 

代替

 @Override public boolean onContextItemSelected(android.view.MenuItem item) { /* ... */ }