Меню с панелью действий
Мне нужен пример или учебник
о том, как добавить элементы меню с помощью панели управления 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.
Ответы
Ответ 1
Вы должны использовать классы 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
содержит много образцов.
Ответ 2
Я использовал ответ @StenaviN выше, но столкнулся с проблемами с onContextItemSelected. Этот пост решил это для меня.
В принципе, вам просто нужно использовать
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
/* ... */
}
вместо
@Override
public boolean onContextItemSelected(MenuItem item) {
/* ... */
}
Ответ 3
Я использовал ответ @Matt выше, но столкнулся с проблемами с onContextItemSelected.
В принципе, вам просто нужно использовать
@Override
public boolean onContextItemSelected(com.actionbarsherlock.view.MenuItem item) {
/* ... */
}
вместо
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
/* ... */
}