我可以在UiBinder模板中使用枚举值作为字段值吗?我正在使用GWT 2.4
像这样
<ui:with field="en" type="com.mine.courierApp.shared.PayerType" />
看起来很有前途,在哪里
public enum PayerType
{
Sender,
Recipient
}
但我无法通过
en.Sender
引用枚举的值。可能吗?
最佳答案
<ui:import field='com.mine.courierApp.shared.PayerType.Sender' />
或者
<ui:import field='com.mine.courierApp.shared.PayerType.*' />
然后,您可以将其用作
payerType='{Sender}'
。但是UiBinder应该自动尝试将枚举常量名称转换为值,因此以下代码应该不需要
ui:with
即可工作:<my:MyWidget payerType='Sender' />
如果
MyWidget
小部件具有public void setPayerType(PayerType type)
方法,则UiBinder应在Sender
枚举(根据方法的参数类型)中查找名为*.ui.xml
的枚举值(来自PayerType
文件)。