0

フルスクリーンで実行され、メニュー ボタンに依存するアプリケーションがあります。私が気付いていなかったのは、Galaxy Tab のようなデバイスが、メニュー ボタンのないアクションバーを使用していることです。私のアプリは現在、メニューボタンに触れると設定メニューを表示するフラグメントをロードします:

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    FragmentManager lFM = getSupportFragmentManager();
    SettingsDialogFragment lSettingsDialog = new SettingsDialogFragment();
    lSettingsDialog.show(lFM, "Settings");

    return false;    
}

アクションバーにカスタムアイコンを追加できることを理解しています。これを押すと、メニューボタンと同じ動作になる可能性があります。私が確信していないのは、これを実装する方法です。

デバイスにメニュー ボタンがなく、アクション バーにアイコンを追加する必要があることをどのように確認できますか? どうやらハニカムでアクションバーが導入されたようにSDKのバージョンを確認するのは簡単ではありませんが、私のGalaxy Noteはアイスクリームサンドイッチを実行し、アクションバーはありません(まだメニューボタンがあります). 不動産をあきらめたくないので、メイン レイアウトにボタンやメニュー オプションを追加することはできません。

私はグーグル開発者で次のことを読みました:

ナビゲーション バー Android 4.0 のスマートフォンの新機能であるナビゲーション バーは、従来のハードウェア キーを持たないデバイスにのみ表示されます。デバイス ナビゲーション コントロールの [戻る]、[ホーム]、[最近] が含まれ、Android 2.3 以前用に作成されたアプリのメニューも表示されます。

そこで、アプリのターゲット バージョンを 8 に設定してみました。メニューの代わりに、アプリの画面サイズを変更できるボタンが表示されますが、メニュー ボタンは表示されません。

4

1 に答える 1

0

フルスクリーンで実行され、メニュー ボタンに依存するアプリケーションがあります。

それは2 年間悪い考えでした。

私が気付いていなかったのは、Galaxy Tab のようなデバイスが、メニュー ボタンのないアクションバーを使用していることです。

このようなデバイスは2 年前から出回っています。

私のアプリは現在、メニューボタンに触れると設定メニューを表示するフラグメントをロードします

それは適切な設計上の動きではありませんでした。MENU ボタンが存在する場合は、Android 1.x/2.x でオプション メニューを表示し、Android 3.0 以降でアクション バー オーバーフローをトリガーして、正常に動作できるようにしてください。

デバイスにメニュー ボタンがないことを確認する方法

http://developer.android.com/reference/android/view/ViewConfiguration.html#hasPermanentMenuKey()

于 2013-01-28T13:09:34.113 に答える