我注意到InteractionDialog
类应该可用作气泡帮助,并尝试了以下方法:
Form hi = new Form("Hi World", BoxLayout.y());
hi.add(new Label("Hi World"));
Command commandDummy = new Command("Dummy");
hi.getToolbar().addCommandToRightBar(commandDummy);
CN.callSerially(() -> {
InteractionDialog interactionDialog = new InteractionDialog("hint");
interactionDialog.add(new Label("this is supposed to be a hint"));
interactionDialog.showPopupDialog(hi.getToolbar().findCommandComponent(commandDummy));
});
hi.show();
但这并不能令人满意,因为气泡并没有真正指向组件。而且气泡并不总是显示出来。
InteractionDialog
是显示气泡帮助的正确工具吗?可以配置为适用于所有皮肤吗?为什么气泡指针没有真正指向应该指向的位置-“虚拟”组件?
以下是屏幕截图:
答案 0 :(得分:0)
InteractionDialog
很好,但是仅限于ContentPane
的区域。主要问题是此问题中说明的箭头边框:https://github.com/codenameone/CodenameOne/issues/2689
当前,iOS具有硬编码的受限箭头边框实现,该实现不允许我们将箭头放置在所需的任何位置。而且,它仅是iOS主题的功能。您可以为自己的主题在PopupDialog
中添加样式,其他主题也可以得到类似的结果。