我目前正在GWT中开发自定义树(扩展AbstractEListViewer)

我想用CellTree填充ListDataProvider,但是我不能像使用CellList那样对AbstractDataProvider.addDataDisplay(HasData<SomeClass>)这样做,因为CellTree不实现HasData<T>

变量:

protected transient CellTree treeViewer;
protected static ListDataProvider<SomeClass> provider;


代码:

@Override
protected Widget createViewer(EWidgetInit init, Container parent) {
    TreeViewModel model = new CustomTreeModel();
    treeViewer = new CellTree(model, null);

    provider = new ListDataProvider<SomeClass>();
    provider.addDataDisplay(treeViewer); // not applicable for the arguments (CellTree)

    return treeViewer.asWidget();
}


错误:

类型为AbstractDataProvider的方法addDataDisplay(HasData)不适用于参数(CellTree)

目前,树显示在网页上,但显示为“空”,因为它当然没有被填充:

有人知道如何填充此CellTree吗?

最佳答案

通过删除此行来解决此问题:

    provider.addDataDisplay(treeViewer); // not applicable for the arguments (CellTree)


并在ListDataProvider之前实例化CellTree

08-26 11:12