2つのフラグメントを持つアクティビティがあります。どちらもListFragmentsであり、MenuItemsをMenuに提供します。ActionBarのボタンとして表示するためにandroid:showAsAction属性を設定した1つのMenuItemがあります。うまくいきます。
現在、MenuItemは状態に依存しています。これは、キューを一時停止および再開するための一時停止/再開メニューオプションです。私の問題は、フラグメントが作成されたときの初期像の設定方法がわからないことです。
その状態は、キューが一時停止されているかどうかによって異なります。したがって、キューを取得し、キューの状態に基づいてブール値(一時停止)を設定するAsyncTaskがあります。onPrepareOptionsMenuを呼び出して、キューの最後の既知の状態に基づいて一時停止メニュー項目のテキストを設定します。これは、実際のメニューにMenuItemを残しておくとうまく機能します。メニューアイコンをタップすると、onPrepareOptionsMenuが起動し、メニューが表示される前に更新されます。
問題は、同じMenuItemをActionBar(showAsAction)に配置した場合、onPrepareOptionsMenuを呼び出さずに強制的に更新する方法です。アプリを初めて起動したときに、キューを取得するリクエストを送信しましたが、ActionBarがセットアップされて表示された後にタスクが戻るため、これを実行できるようにする必要があります。キューの更新を取得するたびに呼び出されるハンドラーをフラグメントに作成しましたが、そこから、ActionBarのMenuItemのテキストをどのように更新できますか?onPrepareOptionMenuを除いて、現在設定されているメニューを操作する方法を見つけることができないようです。
ロブ・W