我不熟悉 gwt ,我不得不从 gwt 2.4升级到 gwt 2.7。
我遇到suggestBox
项问题:
我需要解释MultiWordSuggestOracle
中的HTML标记:
我覆盖isDisplayingStringHtml
以确定它已设置为true:
private MultiWordSuggestOracle oracle = new MultiWordSuggestOracle() {
@Override
public boolean isDisplayStringHTML() {
return true;
}
};
然后我试着插入这个:
private void initOracle() {
String gogogogo= "<tt>####</tt>";
HTML html = new HTML("<tt>####2</tt>");
List<String> listeSuggeree = new ArrayList<String>();
listeSuggeree.add("<HTML><div>#####</div></HTML>");
listeSuggeree.add((gogogogo));
listeSuggeree.add(html.getHTML());
listeSuggeree.add("AAAAAH nothing work");
oracle.addAll(listeSuggeree);
oracle.setDefaultSuggestionsFromText(listeSuggeree);
所有在gwt 2.4上完美运行,我没有找到在 gwt 2.7.0上解释这个HTML的方法,你能帮助我吗?
答案 0 :(得分:0)
您应该使用MultiWordSuggestion。
构造函数有两个参数:
replacementString - 要输入SuggestBox文本框的字符串 如果选择了建议
displayString - 显示字符串
基本上,displayString
显示在列表中,replacementString
在选择后显示在TextBox中。
所以,这是准备你的建议清单的正确方法:
List<Suggestion> listeSuggeree = new ArrayList<Suggestion>();
listeSuggeree.add(new MultiWordSuggestOracle.MultiWordSuggestion("bold replacement", "<b>bold</b>"));
listeSuggeree.add(new MultiWordSuggestOracle.MultiWordSuggestion("italic replacement", "<i>italic</i>"));
listeSuggeree.add(new MultiWordSuggestOracle.MultiWordSuggestion("underline replacement", "<u>underline</u>"));
listeSuggeree.add(new MultiWordSuggestOracle.MultiWordSuggestion("SUCCESS!", "All works!"));
oracle.setDefaultSuggestions(listeSuggeree);
输出是:
BTW:isDisplayStringHTML
默认为true
。