我需要在 GWT 标签中插入换行符。 <br>
不起作用,也不起作用\n
或\u000a
(当我尝试将其添加为字符串文字时,这也恰好是非法转义字符 - 有人知道为什么吗?)
是的,我可以制作两个单独的标签,但我需要在大约 30 个标签上执行此操作,并且我希望有一种更快的方法来解决此问题。
我根本无法使用 HTML,甚至不允许 safeHtml。我知道,在 HTML 中执行此操作很容易,如下所述:GWT label with line breaks
如果你能证明这是不可能的,我也会接受它作为答案(可以吗?看起来应该可以。似乎我们应该有某种特殊的方式来接受答案来验证这一点有些事情是不可能的,也许我应该在 Meta 中提到这一点。
最佳答案
你可以尝试一个小技巧。将所有空格替换为不间断空格,然后将换行符替换为空格。最后,将Label
宽度设置为1%,以强制在任何可能的位置换行(现在是替换换行符的空格)。
private Label getMultilineLabel(String text) {
Label label = new Label(text.replaceAll(" +", "\u00a0").replaceAll("\n", " "));
label.setWidth("1%");
return label;
}
然后
getMultilineLabel("Some quite long text\nwith a line break.");
给出
Some quite long text
with a line break.
关于java - 没有 HTML 的带有换行符的 GWT 标签,这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42965121/