我希望通过作为字符串值传递的名称访问UIBinder呈现的字段值
有没有办法访问存储在ui字段中的数据,如
PersonViewImpl.ui.xml
<g:TextBox ui:field="lastName"/>
PersonViewImpl.java
@UIField
String lastName
public Object fieldByName(String fieldName) {
....
return value;
}
PersonActivity.java
PersonView view;
String ln = (String)view.fieldByName("lastName");
任何解决方案? Thnx in advice
答案 0 :(得分:0)
我不建议使用此模式动态访问小部件。这不是真正干净的代码,很容易破解 如果您想要绑定很多字段,我建议您使用Editors。
如果您仍想访问此小部件,则有2种选择:
HashMap
es(或您要访问的任何字段)的TextBox
,并使用fieldname作为键。您可以创建辅助函数以根据键检索值。但是,您必须自己填充HashMap
。 FlowPanel
)中包含所有窗口小部件,则可以遍历容器窗口小部件的窗口小部件列表并检索它们。您可能会将id设置为fieldname以标识它们。