this.tableViewer = new TableViewer(container);
this.tableViewer.getContentProvider() 为 null
this.tableViewer.getLabelProvider() 不为 null
getContentProvider()和 getLabelProvider()继承自ContentViewer,具体代码:
public IContentProvider getContentProvider() {
return contentProvider;
}
public IBaseLabelProvider getLabelProvider() {
if (labelProvider == null) {
labelProvider = new LabelProvider();
}
return labelProvider;
}
可以判断内容器是否为null设置内容器和标签器:
if(this.tableViewer.getContentProvider() == null){
this.tableViewer.setContentProvider(new ContentProvider());
this.tableViewer.setLabelProvider(new TableLabelProvider());
}
内容器非空则已经设置过,避免重复设置耗费时间