我需要一个例子或如何添加与操作栏福尔摩斯菜单项教程
当我使用简单的菜单与进口
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错误的最后一个方法。
你必须使用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
含有大量的样本。
我用@StenaviN的回答以上,但遇到了与onContextItemSelected问题。 这篇文章解决了这个问题对我来说。
基本上,你只需要使用
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
/* ... */
}
代替
@Override
public boolean onContextItemSelected(MenuItem item) {
/* ... */
}
我用@马特的答案,但上面跑进onContextItemSelected问题。
基本上,你只需要使用
@Override
public boolean onContextItemSelected(com.actionbarsherlock.view.MenuItem item) {
/* ... */
}
代替
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
/* ... */
}