の背景の透明性とそのUIIDを残したので、それがありました背景透明度が255に設定されていても、これまでと同様の問題があり、一貫性がありませんでした。
私の解決策は、ボタンをハンバーガーメニューとして使用し、テーマ1を使用しないようにすることでした。
まず、テーマの定数hideLeftSideMenuBool
を追加してデフォルトのハンバーガーメニューボタンを非表示にして、true
に設定します。
私はサイズに素材アイコンベースを作成するための方法があります。
public static FontImage materialIcon(char charCode, int size, int color) {
Font fnt = Font.createTrueTypeFont("native:MainLight", "native:MainLight").derive(Display.getInstance().convertToPixels(size), Font.STYLE_PLAIN);
Style s = new Style(color, 0, fnt, (byte) 0);
FontImage fm = FontImage.createMaterial(charCode, s);
fm.setPadding(0);
return fm;
}
最後に、私は私のカスタムメニューコマンドを追加して、左のバーの上に置き、sidemenuを開くように設定します。
Command cmdMenu = Command.create("", materialIcon(FontImage.MATERIAL_MENU, 5), evt -> getToolbar().openSideMenu());
if (!Display.getInstance().isTablet() && !Toolbar.isPermanentSideMenu()) {
getToolbar().addCommandToLeftBar(cmdMenu);
}
ありがとう@Diamond、非常に簡単だったので私はあなたの提案に従いました! – HelloWorld
この唯一の欠点は、タブレットデバイスに表示されるメニューボタンです。タブレット端末では、この動作を変更することはできますが、デフォルトで永続的なサイドメニューを使用します。永続的なサイドメニューを持つタブレットにメニューボタンを表示すると、冗長になります。まず、ボタンを追加する前にブール値をチェックします。私の編集された答えを見てください。 – Diamond
あなたが説明した欠点は、シミュレータ(Xoom)に表示されません。私は実際のタブレットデバイスで何が起こるかを調べるためにテストします!とにかくこの答えアドオンのおかげで! – HelloWorld