我在GWT客户端的代码中使用枚举类来定义一组类型.
public enum MyType {
FIRST_TYPE("first"), SECOND_TYPE("second"), THIRD_TYPE("third");
private String title;
private MyType(String title) {
this.title = title;
}
public String getTitle() {
return this.title;
}
}
Run Code Online (Sandbox Code Playgroud)
如何将枚举值本地化以将它们翻译成不同的语言?该title字段并不重要,如果这有助于解决问题,则可以删除该字段.
我知道ResourceBundleJava 的方法,但这不适用于GWT的客户端代码.
tho*_*law 24
我设法通过使用GWT的ConstantsWithLookup界面来解决问题.这是解决方案:
MyType.java
public enum MyType {
FIRST_TYPE, SECOND_TYPE, THIRD_TYPE;
private final MyConstantsWithLookup constants = GWT.create(MyConstantsWithLookup.class)
public String getTitle() {
return this.constants.getString(this.name());
}
}
Run Code Online (Sandbox Code Playgroud)
MyConstantsWithLookup.java
public interface MyConstantsWithLookup extends ConstantsWithLookup {
String FIRST_TYPE();
String SECOND_TYPE();
String THIRD_TYPE();
}
Run Code Online (Sandbox Code Playgroud)
MyConstantsWithLookup.properties
FIRST_TYPE = first
SECOND_TYPE = second
THIRD_TYPE = third
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5433 次 |
| 最近记录: |