2

これは私の最初の投稿です。皆さん、こんにちは。初心者によくある間違いをお許しください。

私の実際のAndroid 4.0プロジェクトでは、アイテムOptions Menuの1つをクリックして開くものを使用していActionBarます。私のメニューの項目は非同期的に更新されるため、場合によっては変更が行われる前に開くことがありますが、これは私にとって適切な動作です。ご存知のように、ユーザーがデバイスの向きを変更すると、アクティビティ全体が再作成されます (メニューも同様です)。この使用例は私のコードで適切に処理されます - の状態Activityは保存されます。

Options Menuメニューがまだ表示されているときにユーザーが開いて向きを変更すると、問題が発生します- メニューが再作成されて表示されます。作成後は表示されないようにしたいです。

それは可能ですか?onCreateOptionsMenu()メソッド内またはメソッド内で何かを行う必要があると思いますonPrepareOptionsMenu()

4

2 に答える 2

0

closeOptionsMenu()OptionsMenu を手動で閉じるために使用できます。後で開く場合は、 を呼び出すことができますopenOptionsMenu()

于 2014-08-28T07:45:38.933 に答える
-1

回避策を考えることができます。onRestoreInstanceState でクラス変数を true に設定します。onPrepareOptionsMenu をオーバーライドすると、その変数が true の場合は false が返され、その変数が再度 false に設定されます。必要な動作が得られるはずです。問題がある場合はコメントしてください。コードを投稿します。

于 2013-10-30T12:49:44.160 に答える