不使用任何图像加载库,我正在加载如下图像:
final Image img = new Image();
img.setVisible(false);
RootPanel.get().add(img);
img.addErrorHandler(new ErrorHandler() {
@Override
public void onError(ErrorEvent event) {
System.out.println(event);
}
});
img.addLoadHandler(new LoadHandler() {
@Override
public void onLoad(LoadEvent event) {
ImageElement data = ImageElement.as(img.getElement());
RootPanel.get().remove(img);
obj.setData(data);
System.out.println("Arrived:" + (System.currentTimeMillis()-startTime) + "ms");
render();
}
});
不使用 。RootPanel.get()加(IMG); 图像永远不会添加到DOM中。所以onLoad不会被触发。 但是当你将图像添加到DOM中时,如果你不删除它,这将是内存泄漏。
我对上述代码的观察:
我的问题是,是否有图像加载程序(库)处理图像加载?
图像加载后,是否会自动从DOM中删除图像?
有没有更合适的方法来处理这个问题,你在绘制许多图像但绘图后不需要图像?
还有快速的方法来添加和删除DOM中的图像吗?
答案 0 :(得分:1)
要加载图片,请使用com.google.gwt.widgetideas.graphics.client.ImageLoader
一次加载大量图像。