gpt4 book ai didi

java - GWT - 将不同的 XML 模板应用于同一小部件

转载 作者:行者123 更新时间:2023-11-29 05:54:27 25 4
gpt4 key购买 nike

为了减少一些重复的代码/类,我尝试只为 1 个所有者类使用多个 XML 模板。 official GWT guide已经指出了如何做到这一点。

   public class FooPickerDisplay extends Composite{
@UiTemplate("RedFooPicker.ui.xml")
interface RedBinder extends UiBinder<Widget, FooPickerDisplay> {}
private static RedBinder redBinder = GWT.create(RedBinder.class);

@UiTemplate("BlueFooPicker.ui.xml")
interface BlueBinder extends UiBinder<Widget, FooPickerDisplay> {}
private static BlueBinder blueBinder = GWT.create(BlueBinder.class);

@UiField Button button1;
}

'@UiField' 会导致编译错误,它说“Field button1 在模板文件 BlueFooPicker.ui.xml 中没有对应的字段”

我的RedFooPicker.ui.xml和BlueFooPicker.ui.xml的内容完全不同,所以RedFooPicker.ui.xml中有UiField="button1",而BlueFooPicker.ui.xml中没有button1。

所以我的问题是,是否有任何方法可以为同一所有者类使用具有完全不同内容的多个 XML 模板而不会导致此类错误?

最佳答案

不,每个 UiBinder 必须作用于不同的所有者类。但是,您可以轻松地为其中一个 UiBinder 创建一个内部类。文档中的示例是关于使用一个或另一个,而不是同时使用两者。

顺便说一句,为了减少重复,您最好尝试将事物抽象为可重用的小部件。

关于java - GWT - 将不同的 XML 模板应用于同一小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12717454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com