gwt - 如何在 UiBinder (XML) 中使用带有 SafeHtml 参数而不是字符串的方法?
问题描述
我们正在将我们的应用程序从 GXT 3 迁移到 GXT 4(以及从 GWT 2.5 到 2.8.2),其中改变的一件事是大量组件的正文/文本/标题/等。现在有两个独立的二传手。一个接受字符串参数,另一个接受 SafeHtml。
这是一个例子:
public void setToolTip(SafeHtml html) {
...
}
public void setToolTip(String text) {
...
}
不同之处在于接受 String 的方法不呈现 html 元素。但是,另一个可以,如果使用 Java 代码来构建 UI,那是非常好的。不幸的是,我们确实有很多使用 GWT 的 XML 方法构建的 UI,我希望它保持这种状态。
问题是我无法弄清楚如何显示带有 SafeHtml 正文的工具提示。当我尝试这样做时,会出现编译错误。这是我放入 XML 文件的内容:
...
<form:TextArea ui:field="testField" toolTip="{messages.testMesssage}" >
...
这是错误:
[ERROR] java.lang.String required, but {testMess.test} returns com.google.gwt.safehtml.shared.SafeHtml: <form:TextArea toolTip='{messages.testMesssage}' ui:field='testField'> (:184)
谢谢!
解决方案
您可能想查看UiBinder 中工具提示的 GXT 示例。在那里,它显示使用 ToolTipConfig 而不是尝试直接设置“工具提示”。
<ui:with type="com.sencha.gxt.widget.core.client.tips.ToolTipConfig"
field="toolTipConfig">
<ui:attributes title="Information" body="Prints the current document" />
</ui:with>
...
<form:TextArea ui:field="testField" toolTipConfig="{toolTipConfig}" />
推荐阅读
- php - Mysql Prepared Statement Fails - 带有多个语句的 sql 查询
- html - 锚标记大于自动调整大小的 img
- openfoam - 我应该选择哪种 OpenFOAM 求解器来模拟近岸地区的波浪产生(周期性)及其破坏?
- python - 从数据集中获取给定类名的相应类 id
- python - 从 SFMC 获取数据时标识符中的字符无效
- flutter - flutter win 10 升级 1.22 到 2.2.0 完整错误路径包后
- javascript - javascript中未定义音频标签错误
- c++ - c++ 中是否有枚举数的自动名称查找?
- dojo - dojo 1.13.0 下的文件 bower.json 和 package.json 给出了安全问题
- sql - Oracle pro*c) 获取一定数量的行(例如,50),但返回的数据数量是分散的,而不是一次。(例如,1,40,10)