3

私のアプリでは、アクションバーは表示されますが、onCreateOptionsMenu が呼び出されないため、設定項目は表示されません。

ターゲット SDK 16 の場合、アプリはタブで構成され、各タブはフラグメントです。Fragment クラスでは、onCreate() 中に setHasOptionsMenu(true) を呼び出しています。テーマは Theme.Holo.Light です。エミュレーター (Android 4.0) でアプリを実行し、ハードウェア メニュー項目を押すと、メソッドが呼び出されますが、アクションバーではなく、Android 2.3 メニューのようなメニューが表示されます!!

アクションバーが表示されているので、sdk バージョンに問題があるとは思いません。何か案が?エラーを見つけるために何を確認できますか?

いつも助けてくれてありがとう!よろしくマヌエラ

4

2 に答える 2

4

私は同じ問題を抱えており、この方法で解決しました

マニフェスト.xml

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar" >

Android:theme="@android:style/Theme.NoTitleBar" を削除します

于 2013-01-22T09:09:14.383 に答える
1

それが正常な動作です。システムは、実行中のハードウェアに適応します。

デバイスにハードウェア ボタンがない場合は、アクション バーのドロップダウンとして表示されます。デバイスにハードウェア ボタンがある場合は、メニュー ボタンの近くから立ち上がって表示されます。

編集

メニューがアクションバーにある場合、メニューは一度だけ作成されます(メニューは画面に残り、ハードウェアキーフォンのように消えないため)、別のコールバックがあります.onPrepareOptionsMenuまたはそれに似たものだと思います.メニューが画面に表示される前。

于 2012-10-31T11:48:52.610 に答える