在CodenameOne的常规文本中嵌入材质图标字符

在CodenameOne的常规文本中嵌入材质图标字符,codenameone,Codenameone,有没有办法在常规文本段落中插入材质图标字符 所以我需要这样的东西:“一些文本”+这里的材质图标字符+“一些更多的文本”。我想让它正常流动,没有多余的线 谢谢。根据这个问题的概括程度,我想有几种方法。例如,复杂的解决方案可以是RichTextView类的扩展,以支持此功能() 然而,一种基本的方法是在一个容器内有两个或三个标签和一个流程布局布局。例如,以下代码: Form hi = new Form("Hi World", BoxLayout.y()); Container te

有没有办法在常规文本段落中插入材质图标字符

所以我需要这样的东西:“一些文本”+这里的材质图标字符+“一些更多的文本”。我想让它正常流动,没有多余的线


谢谢。

根据这个问题的概括程度,我想有几种方法。例如,复杂的解决方案可以是
RichTextView
类的扩展,以支持此功能()

然而,一种基本的方法是在一个
容器
内有两个或三个
标签
和一个
流程布局
布局。例如,以下代码:

    Form hi = new Form("Hi World", BoxLayout.y());

    Container textWithMaterialIconInside = new Container(new FlowLayout(Component.LEFT));
    textWithMaterialIconInside.add(new Label("Some text", "Label"));
    textWithMaterialIconInside.add(new Label(FontImage.createMaterial(FontImage.MATERIAL_BACKUP, UIManager.getInstance().getComponentStyle("Label"))));
    textWithMaterialIconInside.add(new Label("and other text", "Label"));

    hi.add(textWithMaterialIconInside);
    hi.show();
生成此内容:


FlowLayout技巧仅适用于短文本。对于较长的文本,需要使用SpanLabel,将不起作用。我所做的只是为每个单词创建一个标签,并将它们全部放入一个FlowLayout中。您所做的与RichTextView类中使用的方法完全相同(如上所述),该类允许使用简单的标记来格式化文本(实际上它在
FlowLayout
中拆分
标签中的文本)。另一种方法是使用
BrowserComponent
来显示html内容:选择取决于用例的复杂性。是的,我知道,但没有看到任何对图像的支持,所以我决定只使用我自己的实用程序。无论如何,我都会接受你的回答,因为它给了我所需要的暗示。谢谢