如何本地化DateLabel和NumberLabel customFormat属性?

时间:2012-10-29 03:20:27

标签: gwt localization uibinder

我正在本地化一个相当大的GWT UIbinder代码库,并遇到了几个设置属性的过程不起作用的实例。

DateLabel javadoc

NumberLabel javadoc

我需要在LocalizableResource_xx.properties文件中为DateLabel和NumberLabel小部件指定日期格式和数字格式。

我尝试转换此片段

   <g:DateLabel styleName="{style.formPromptData}" 
        ui:field="createDate" customFormat="MMM d, yyyy" /> 

使用the ui:attribute method但没有成功

             

调用生成器com.google.gwt.uibinder.rebind.UiBinderGenerator     [错误]找不到应用消息属性customFormat元素(:63)

的方法

有没有办法本地化这些元素?

1 个答案:

答案 0 :(得分:3)

customFormat="XXX"转换为DateTimeFormat.getFormat("XXX")并且与本地化无关:也就是说,它不可本地化。

如果您需要可本地化的自定义格式,请使用CustomDateTimeFormat(目前依赖于ICU4J的DateTimePatternGenerator)或ConstantsMessages界面。使用<ui:with>对其进行实例化,并使用customFormat="{intf.customPattern}"format="{intf.customPattern}"实际使用CustomDateTimeFormat)。