メニュー(電話のメニューボタンによってトリガーされるもの)をカスタマイズする方法(方法がある場合)は何ですか。私が特に興味を持っているのは次の 2 点です。
- 背景色を標準のライト グレーからダーク グレーに変更する
- メニュー項目の配置方法。4 つのアイテムがあり、それらは自動的に 2x2 に配置されますが、すべてを 1 行 (1x4) に配置したいと考えています。
メニュー(電話のメニューボタンによってトリガーされるもの)をカスタマイズする方法(方法がある場合)は何ですか。私が特に興味を持っているのは次の 2 点です。
独自のメニュークラスを作成しました。それはあなたが望むものではないかもしれませんが、うまくいけばあなたが始められるはずです。これが私が公開した記事とソースコードへのダウンロード可能なリンクです。
http://www.codeproject.com/KB/android/AndroidMenusMyWay.aspx
組み込みのメニュー フレームワークではありません。
MENU ボタンを (onKeyDown()
または何かを介して) インターセプトして、必要なものをレンダリングすることは大歓迎ですが、ユーザーは、デバイス上の残りのメニューと同じように見えることを期待していることに注意してください。
スタイルを使用します。これは、Android 5.0で機能します
<style name="AppTheme" parent="android:Theme.Material.Light">
<item name="android:colorPrimary">@color/primary</item>
<item name="android:actionOverflowMenuStyle">@style/PopupMenu.MyStyle</item>
</style>
<style name="PopupMenu.MyStyle" parent="android:Widget.PopupMenu">
<item name="android:popupBackground">@drawable/actionbar_item_background</item>
</style>
...その後、ドローアブルは通常のセレクターです
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/primary"/>
<item android:drawable="@color/highlighted" android:state_pressed="true"/>
</selector>
通常は標準メニューを表示するために使用される「onCreateOptionsMenu」メソッドを実装するだけで、この場合は必要なものを表示することもできます。
私のゲームでは、メニューボタンが押されたときに「ゲームの一時停止」ダイアログボックスを表示するように実装しました...