GWT UiBinder动态国际化

时间:2012-12-17 13:05:44

标签: gwt internationalization

我想在我的GWT应用中使用动态国际化,采用Dictionary类方法。

我可以像这样使用uiBinder吗?

<g:HTMLPanel>
    <span>{Dictionary.getDictionary("locale").get("hello_world_key")}</span>
</g:HTMLPanel>

(Flex mxml文件就像这样工作。)

1 个答案:

答案 0 :(得分:1)

不,UiBinder仅支持调用零arg非静态方法或导入静态字段。

您必须隐藏类或界面背后的字典才能执行{myDictionary.hello_world_key}之类的操作。

IMO,如果您确实想要使用动态I18N,请使用类似于com.google.gwt.i18N.shared.Constants的界面并制作您自己的生成器,以便String hello_world_key();映射到get("hello_world_key")上的Dictionary实例。您的代码将更好地阅读并变得更易于维护。