我在GWT中有一个带有textcells和buttoncell的单元格表,现在我想在我的单元格中添加一个hyperlinkCell,这可能吗?
TextCell jobStatusCell = new TextCell();
jobStatusColumn = new Column<EmployerJobs, String>(jobStatusCell) {
@Override
public String getValue(EmployerJobs object) {
// int status = object.getJobStatusId();
/*
* if(status ==1) { return ""; } else
*/
// return "post job";
return "view";
}
};
我想要一些像这样的东西
HyperlinkCell jobStatusCell = new HyperLinkCell();
谢谢
答案 0 :(得分:1)
你的意思是HyperlinkCell吗?
如果没有,您可以编写一个普通的超链接(<a href="http://www.stackoverflow.com">linkCell </a>
)并将其作为单元格的内容。
答案 1 :(得分:0)
尝试使用以下Cell实现
确保将单元格的值提供为2个String对象的数组,如:
String[] value = new String[2];
value[HyperTextCell.LINK_INDEX] = "http://www.google.com";
value[HyperTextCell.TEXT_INDEX] = "Search on google";
public class HyperTextCell extends AbstractCell<String[]> {
interface Template extends SafeHtmlTemplates {
@Template("<a target=\"_blank\" href=\"{0}\">{1}</a>")
SafeHtml hyperText(SafeUri link, String text);
}
private static Template template;
public static final int LINK_INDEX = 0, URL_INDEX = 1;
/**
* Construct a new ImageCell.
*/
public HyperTextCell() {
if (template == null) {
template = GWT.create(Template.class);
}
}
@Override
public void render(Context context, String[] value, SafeHtmlBuilder sb) {
if (value != null) {
// The template will sanitize the URI.
sb.append(template.hyperText(UriUtils.fromString(value[LINK_INDEX]), value[URL_INDEX]));
}
}
}