Codenameone 如何在工具栏的侧菜单图标中添加徽章

Codenameone 如何在工具栏的侧菜单图标中添加徽章,codenameone,Codenameone,如何向侧菜单图标添加预算 这些问题有点模糊,我不确定我是否理解您的问题,但根据我的经验,定制工具栏的唯一方法是使用setTitleComponent并将您自己的自定义容器添加到工具栏中,以完成开箱即用工具栏方法提供的功能之外的任何事情。这样做的缺点是,你将不得不重新设计你的许多工具栏,因为你将基本上从头开始重新创建它们。您可以使用setTitleComponent将新容器居中,覆盖其CalcReferredSize以水平拉伸整个工具栏,并像在任何容器中一样将内容粘贴在其中(使用任何布局等) 实

如何向侧菜单图标添加预算


这些问题有点模糊,我不确定我是否理解您的问题,但根据我的经验,定制工具栏的唯一方法是使用
setTitleComponent
并将您自己的自定义容器添加到工具栏中,以完成开箱即用工具栏方法提供的功能之外的任何事情。这样做的缺点是,你将不得不重新设计你的许多工具栏,因为你将基本上从头开始重新创建它们。您可以使用
setTitleComponent
将新容器居中,覆盖其
CalcReferredSize
以水平拉伸整个工具栏,并像在任何容器中一样将内容粘贴在其中(使用任何布局等)

实现目标的另一种方法是扩展Toolbar类并手动更改其中的内容。但是Toolbar类相当繁重,您可能会花费比使用第一种方法更多的时间来尝试更改什么

方法#1示例代码:

//stick stuff in this container to create your own toolbar
Container titleContainer = new Container(new BorderLayout()) {
        @Override
        protected Dimension calcPreferredSize() {
            Dimension original = super.calcPreferredSize();
            return new Dimension(Display.getInstance().getDisplayWidth(), original.getHeight());
        }
    };
form.getToolbar().setTitleComponent(titleContainer);
下面是一个例子,说明如果你走这条路线(几乎任何事情)可以实现什么:


定义主题常量:
hideLeftSideMenuBool=true
。这将完全隐藏菜单。然后,您可以使用下面的答案添加您自己的菜单按钮,该按钮仅调用工具栏打开侧抽屉APIThank You Shai Almog,我已成功自定义了工具栏并添加了图标,如何设置菜单图标的操作以打开侧抽屉
form.getToolbar().openSideMenu()
谢谢Shai,这一切都很好,只是抽屉失去了它的两个特点,1:当互操作自动边界时的设置配置;2:设置模糊背景。这两个功能都不起作用。你是如何实现这两个功能的?你做了什么特别的设置吗?
//stick stuff in this container to create your own toolbar
Container titleContainer = new Container(new BorderLayout()) {
        @Override
        protected Dimension calcPreferredSize() {
            Dimension original = super.calcPreferredSize();
            return new Dimension(Display.getInstance().getDisplayWidth(), original.getHeight());
        }
    };
form.getToolbar().setTitleComponent(titleContainer);