如何使用UIBinder混合HTML和GWT小部件?
我们有一个使用UIBinder构建的现有UI,其UI.xml文件包含以下层次结构:如何使用UIBinder混合HTML和GWT小部件?,gwt,uibinder,Gwt,Uibinder,我们有一个使用UIBinder构建的现有UI,其UI.xml文件包含以下层次结构: <ui:UiBinder> <div> Multiple <span> or <a> separated by verbatim HTML (like | separators). 多个或由逐字HTML分隔(如|分隔符)。 我需要用列表框替换其中一个锚 有没有一种方法可以在不使用HTMLPanel替换div并将所有锚更改为其他锚的情况下进行此转换 如果我尝试将
<ui:UiBinder>
<div>
Multiple <span> or <a> separated by verbatim HTML (like | separators).
多个或由逐字HTML分隔(如|分隔符)。
我需要用列表框替换其中一个锚
有没有一种方法可以在不使用HTMLPanel替换div并将所有锚更改为其他锚的情况下进行此转换
如果我尝试将gwt:ValueListBox或gwt:ListBox粘贴在其中,则会收到一条错误消息,表示无法将两者混合使用。我也不能在UIBinder下有多个子项(比如一个div和一个HTMLPanel)
如果我唯一的选择是将所有内容转换为小部件,那么对和项的适当转换是什么?在UIBinder中,
HTMLPanel
可以包含HTML元素和GWT小部件,但HTML元素只能包含其他HTML元素
只需将顶级div
替换为HTMLPanel
,然后仅将特定的
锚替换为gwt:ListBox
,如下所示
<gwt:HTMLPanel>
<div align="center">
<gwt:VerticalPanel res:styleName="style.background">
为什么不在活页夹中添加一个HTMLPanel,然后将div和其他HTML放入其中?…当然,在Java代码中,您可能需要扩展复合
和initWidget
,而不是扩展Widget
和setElement
。来自HTMLPanel javadoc:“一个包含HTML的面板,可以将子窗口小部件附加到该HTML中已标识的元素。”-这表明HTML元素实际上可以包含窗口小部件