2

我可以<replace-with>根据 GWT 模块文件中设置的属性使用标签来换出类的不同实现。太好了——我喜欢它。

但是:我的观点formfactor="mobile"formfactor="desktop"我使用的 ui.xml 文件之间的所有不同之处 - 甚至 java 文件都是相同的。所以,类交换是不够的——我不想复制 Java 文件来获得不同的类。

如何使用属性来影响作为 UiBinder 模板加载的 ui.xml 文件?

注意:我目前正在使用一种解决方法来计算 Java 中的模块属性应该是什么,并在加载适当的 ui.xml 文件的 switch 语句中使用该属性。这是不可取的,因为:

  • 代码重复 - 我必须计算模块文件和 java 代码中的属性
  • 每个排列都必须编译每个 ui.xml 文件,以便在运行时选择正确的文件。我更喜欢编译时解决方案。
4

1 回答 1

0

我认为,您必须编写自己的生成器,它将为不同的 ui 活页夹模板提供服务。可能您可以在 UiBinderGenerator 中重载方法 deduceTemplateFile()

于 2012-06-02T18:33:18.247 回答