Tenho uma atividade que tem 2 fragmentos. Ambos são ListFragments e contribuem com MenuItems para o Menu. Eu tenho um MenuItem que configurei o atributo android: showAsAction para que seja mostrado como um botão na ActionBar. O que funciona bem.
Agora o MenuItem é dependente do estado. É uma opção de menu Pausar / Reiniciar para pausar e retomar uma fila. Meu problema é que não consigo descobrir como definir sua estátua inicial quando o fragmento é criado.
Seu estado depende se a fila está pausada ou não. Portanto, tenho um AsyncTask que obtém a fila e define um booleano (pausado) com base no estado da fila. Estou chamando onPrepareOptionsMenu para definir o texto para o item de menu Pausa com base no último estado conhecido da fila e isso funciona muito bem se eu deixar o MenuItem no menu real. Você toca no ícone do menu e onPrepareOptionsMenu é disparado e o menu é atualizado antes de ser exibido.
O problema é que, se eu colocar esse mesmo MenuItem na ActionBar (showAsAction), como posso forçá-lo a atualizar sem ter que chamar onPrepareOptionsMenu? Preciso ser capaz de fazer isso porque na primeira inicialização do aplicativo, envio uma solicitação para obter a fila, mas a tarefa retorna após a ActionBar ser configurada e exibida. Eu criei um manipulador em meu fragmento que é chamado sempre que recebo uma atualização de fila, mas a partir daí, como posso atualizar o texto do meu MenuItem na ActionBar? Não consigo encontrar uma maneira de fazer com que o Menu definido atualmente para manipulá-lo, exceto em onPrepareOptionMenu.
Rob W.