我搜索了ImageLoaderFactory.create( context )
做了什么,但我不明白。
ImageLoader = ImageLoaderFactory.create(context);
我知道ImageLoader
适用于在网上下载的图片。
答案 0 :(得分:0)
以下snipet用于ImageLoader从项目文件夹中的任何URL加载图像:
import java.net.URL;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Path;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.graphics.Image;
import org.osgi.framework.Bundle;
import org.osgi.framework.FrameworkUtil;
public class ImageLoaderImpl implements IImageLoader {
@Override
public Image loadImage(Class<?> clazz, String path) {
Bundle bundle = FrameworkUtil.getBundle(clazz);
URL url = FileLocator.find(bundle, new Path(path), null);
ImageDescriptor imageDescr = ImageDescriptor.createFromURL(url);
return imageDescr.createImage();
}
}
您可以实现ImageLoaderFactory来检索IImageLoader对象。 然后,例如,在您的代码中,您可以从项目文件夹中加载图像(您已在项目中创建了一个“icon”文件夹:
imageLoader.loadImage(this.getClass(), "icons/myicon.png");