2011-09-28 134 views
0

我正在使用GWT的国际化来管理我的应用程序的不同语言。我有一段文字,其中有些词语是粗体的。因此我做了与here所述相同的事情。GWT国际化中的HTML标记

@DefaultMessage("Welcome back, {startBold,<b>}{0}{endBold,</b>}") 
String testMessage(String name); 

然而,当我运行应用程序,我得到“欢迎回来,< B>彼得</B>” < B,使用之间(的HTML写出来,而不是解释。我故意把一个空间这个文本编辑器不会解释html标签)。

有谁知道如何解决这个问题?提前谢谢了!

P.S. 代码片段,得到语言字符串:

Label label = new Label(); 
label.addStyleName("intro-Text"); 
label.setText(new HTML(trans.testMessage(name)).getHTML()); 
+0

请向我们展示您实际使用'testMessage(String)'方法显示文本的代码。这听起来像你不使用一个HTML敏感的小部件(比如'Label'而不是'HTML')。 – z00bs

+0

@ z00bs我用HTML直接替换了标签,它可以工作。如果你发表你的评论作为答案,那么我会接受它:)!谢谢 – mkn

回答

2

而不是使用一个Label使用HTML widget的。

HTML text = new HTML(); 
text.addStyleName("intro-Text"); 
text.setHTML(trans.testMessage(name)); 

希望有所帮助。

+0

非常感谢您的帮助 – mkn