“addMaterialCommandToSideMenu”可以为不同的项目设置不同的样式吗?

时间:2017-06-13 08:55:39

标签: codenameone

例如,我希望在侧边菜单中为每个项目添加不同的颜色:

tb.addMaterialCommandToSideMenu("Home",FontImage.MATERIAL_HOME,e->{});
tb.addMaterialCommandToSideMenu("Website",FontImage.MATERIAL_WEB,e->{});
tb.addMaterialCommandToSideMenu("Settings",FontImage.MATERIAL_SETTINGS,e->{});

是否可以为每个项目设置单独的主题(例如:“家”使用“Theme1”,“网站”使用“Theme2”)?

我找不到允许我单独设置主题的任何MaterialCommand类型,“addMaterialCommandToSideMenu”不适合拥有不同主题的不同项目吗?如果是这样,我怎么能做到这一点? (例如:将每个按钮单独添加到工具栏?如何?)

1 个答案:

答案 0 :(得分:0)

此处的简写目前不包括该功能。您可以使用任何样式创建自己的材质图标,然后使用addCommandToSideMenu代替。

您可以通过放置客户端属性来自定义命令的uiid:

myCmd.putClientProperty("uiid", "MyUIID");

在您添加命令后,这可能不起作用,因为已经创建了UI。

另一种方法是使用findCommandComponent(cmd)返回一个可以自定义的按钮。