1) 활동에 메뉴에 대한 참조를 저장하십시오. 활동에 개인 재산을 만듭니다
private Menu mMenu;
2) onCreateOptionsMenu
의 메뉴에 대한 참조를 가져옵니다 :
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.test_choice, menu);
mMenu = menu;
return super.onCreateOptionsMenu(menu);
}
3) 그런 다음 필요할 때마다 작업 표시 줄의 항목을 변경 전환 할 수 있습니다 , 예. 여기 당신이 사이에 (작업 표시 줄에서 드롭 다운을 전환 할 수있는 방법, 추가 의견을 바탕으로
private void displayActionBar() {
if (mMenu == null) return;
if (mQuestionStage) {
MenuItem nextItem = mMenu.findItem(R.id.action_testNext);
nextItem.setIcon(R.drawable.navigation_accept);
nextItem.setTitle(getResources().getString(R.string.action_testCheck));
} else
{
MenuItem nextItem = mMenu.findItem(R.id.action_testNext);
nextItem.setIcon(R.drawable.navigation_forward);
nextItem.setTitle(getResources().getString(R.string.action_testNext));
}
}
편집
: 나는 작업 표시 줄 항목의 아이콘과 제목을 변경하는 방법을 만들어 보여주고 표시하지 않음).
ActionBar actionBar = getSupportActionBar();
if (actionBar.getNavigationMode() == ActionBar.NAVIGATION_MODE_LIST)
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
else
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
에
menu.clear()
을했다. 나는 Menu를 사용하고 싶지 않다. 조각 1에 대한 작업 표시 줄의 드롭 다운 목록이 필요하며 조각 2가 대체되기 전에 작업 표시 줄에서 드롭 다운 목록을 제거해야합니다. – TieDad편집 된 답변보기 – Szymon