首页 > 解决方案 > 工具栏中的 SearchCommand 不再正确显示

问题描述

我注意到不久前更新 CN1 后,工具栏中的搜索不再正确显示。

当您单击搜索图标时,工具栏将更改并显示图标,但即使您开始输入,用于输入搜索文本(通常显示提示)的文本字段也不会显示。它仅在您触发屏幕刷新时显示,例如单击搜索字段或表单。

Form hi18 = new Form("FormTitle");
hi18.setLayout(BoxLayout.y());
Container cont18 = hi18.getContentPane();
hi18.getToolbar().addSearchCommand((e) -> {
    String text = (String) e.getSource();
    for (Component c : hi18.getContentPane()) {
        c.setHidden(c instanceof Label && ((Label) c).getText().indexOf(text) < 0);
    }
    hi18.getComponentForm().animateLayout(150);
});
for (int i = 0; i < 20; i++) {
    Label l = new Label("Label " + i);
    cont18.add(l);
}
hi18.show(); 

标签: codenameone

解决方案


考虑到您为测试用例创建了一个没有文本的标题,这对我来说看起来不错,因此它可能会缩小您的范围。我建议在标题中添加文本并确保您的样式不会对此产生太大影响。我还建议在讨论看起来不正确的内容时添加屏幕截图,以便我们都在同一页面上。

这些是在当前主干上使用您的代码生成的:

在此处输入图像描述

在此处输入图像描述


推荐阅读