java - 如何提取UiBinder文件的公共(public)部分?

标签 java gwt

假设我们有两个使用 UiBinder 构建的页面。 UiBinder 文件可以与此类似:

<g:HTMLPanel>
    <g:FlowPanel styleName="{resourceBundle.loginCss.login}">
        <g:FlowPanel styleName="{resourceBundle.loginCss.majorLoginBox}">
            <g:FlowPanel styleName="{resourceBundle.loginCss.loginTop}"/>
            <g:FlowPanel styleName="{resourceBundle.loginCss.loginContent}">
                <g:LazyPanel ui:field="inputPanel">
                    <g:FlowPanel styleName="{resourceBundle.loginCss.loginForm}" addStyleNames="{style.resetPasswordForm}">
                        <g:Label text="{localization.forgotpassword_form_header}"
                                 styleName="{resourceBundle.loginCss.loginFormHeader}"/>
                        <g:Label text="{localization.login_username}"/>
                        <g:TextBox ui:field="username" inputMaxLength="64"/>
                        <g:Label ui:field="validationError" styleName="{resourceBundle.css.errorText}"/>
                        <g:Anchor ui:field="sendButton" text="{localization.forgotpassword_send}"
                                  styleName="{resourceBundle.loginCss.loginButton}"/>
                    </g:FlowPanel>
                </g:LazyPanel>
                <g:LazyPanel ui:field="messagePanel" visible="false">
                    <g:Label ui:field="messageLabel"/>
                </g:LazyPanel>
            </g:FlowPanel>
        </g:FlowPanel>
    </g:FlowPanel>
</g:HTMLPanel>

一般来说,有什么并不重要,只是一个例子。当然,有两个 java 类与这些 UiBinder 文件相对应。因此,很明显,我可以从 java 类中提取公共(public)部分到某个抽象类。

是否可以对 UiBinder 文件执行此操作?怎么办?

最佳答案

公共(public)部分可以是 Composite widget有自己的 UiBinder 文件。然后你可以简单地将这个小部件插入到其他 UiBinder 文件中。例如,如果 w 指向您的小部件库:

<g:HTMLPanel>
    ...
    <w:MyWidget>
    ...
</g:HTMLPanel>

关于java - 如何提取UiBinder文件的公共(public)部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25197073/

相关文章:

java - 调用 SQLException.getMessage() 时出现 RuntimeException (DB2)

java - 如何在 Java 8 中动态进行过滤?

css - GWT 教程主体填充

eclipse - 最好的Eclipse GWT插件是什么?

java - libGDX : Correctly using websocket for GWT

java - Android 应用程序从 SQLite 中获取数据

java - 在 JList 中添加并显示对象

java - "inject everything"在 Android 中是一种不好的做法吗?

gwtp水平面板垂直对齐="ALIGN_MIDDLE"

css - 如何将特定样式添加到所选行 DataGrid GWT 中的列