我需要一个示例或教程 关于如何使用操作栏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错误的最终方法。
答案 0 :(得分:49)
您必须使用Menu
包中的MenuInflater
,MenuItem
和com.actionbarsherlock.view
类:
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
包含大量样本。
答案 1 :(得分:3)
我在上面使用了@StenaviN的答案但遇到了onContextItemSelected的问题。 This post为我解决了这个问题。
基本上,你只需要使用
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
/* ... */
}
而不是
@Override
public boolean onContextItemSelected(MenuItem item) {
/* ... */
}
答案 2 :(得分:3)
我在上面使用了@Matt的答案但遇到了onContextItemSelected的问题。
基本上,你只需要使用
@Override
public boolean onContextItemSelected(com.actionbarsherlock.view.MenuItem item) {
/* ... */
}
而不是
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
/* ... */
}