万能imageLoaderは画像の包装をロードして、直接使います
3077 ワード
ImageLoaderはandroidの牛が追い詰めるオープンソースプロジェクトで、皆さんがもっと使いやすいように、私はここでそれぞれ
1:ネットワーク画像のロード
2:drwableディレクトリピクチャのロード
3:assertディレクトリのピクチャをロードする
4:アルバム画像のロード
などのモジュールがパッケージされています.
アルバムの画像をロード:ImageLoaderUtils.displayImage(ImageLoaderUtils.FilePrefix.FILE, mPhotoPath, iv_head_img);
Assetディレクトリ画像のロード:ImageLoaderUtils.displayImage(FilePrefix.ASSETS, "ic_pulish_channel.png", ivLoadingFlash,ishouApplication.loadingOptionsPublishChinal);
drawableピクチャのロード:ImageLoaderUtils.displayImage(FilePrefix.DRAWABLE, ""+R.drawable.ic_launch, ivLoadingFlash,ishouApplication.loadingOptions);
1:ネットワーク画像のロード
2:drwableディレクトリピクチャのロード
3:assertディレクトリのピクチャをロードする
4:アルバム画像のロード
などのモジュールがパッケージされています.
import android.widget.ImageView;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.ImageLoadingListener;
/**
* @ClassName ImageLoaderUtils.java
* @Description universalimageloader
* ( ,assert ,drawable , .9.png )
* String imageUri= "http://site.com/image.png"; // from Web
* String imageUri ="file:///mnt/sdcard/image.png"; // from SD card
* String imageUri= "content://media/external/audio/albumart/13"; // from content provider
* String imageUri = "assets://image.png"; // from assets
* String imageUri = "drawable://" + R.drawable.image; // from drawables (only images, non-9patch)
* @author youxuan E-mail:[email protected]
* @date :2015-4-1 11:45:07
* @version 3.7.2
*/
public class ImageLoaderUtils {
private ImageLoaderUtils() {
}
public static void displayImage(FilePrefix prefix, String uri, ImageView iv) {
ImageLoader.getInstance()
.displayImage(prefix.getPathPrefix() + uri, iv);
}
public static void displayImage(FilePrefix prefix, String uri, ImageView iv,DisplayImageOptions options) {
ImageLoader.getInstance().displayImage(prefix.getPathPrefix(), iv, options);
}
public static void displayImage(FilePrefix prefix, String uri, ImageView iv,ImageLoadingListener listener) {
ImageLoader.getInstance().displayImage(prefix.getPathPrefix(), iv,listener);
}
public static void displayImage(FilePrefix prefix, String uri, ImageView iv,DisplayImageOptions options,ImageLoadingListener listener) {
ImageLoader.getInstance().displayImage(prefix.getPathPrefix(), iv,options,listener);
}
public enum FilePrefix {
HTTP {
@Override
public String getPathPrefix() {
//return "http://";
return "";
}
},
FILE {
@Override
public String getPathPrefix() {
return "file:///";
}
},
CONTENT {
@Override
public String getPathPrefix() {
return "content://";
}
},
ASSETS {
@Override
public String getPathPrefix() {
return "assets://";
}
},
DRAWABLE {
@Override
public String getPathPrefix() {
return "drawable://";
};
};
public abstract String getPathPrefix();
}
}
アルバムの画像をロード:ImageLoaderUtils.displayImage(ImageLoaderUtils.FilePrefix.FILE, mPhotoPath, iv_head_img);
Assetディレクトリ画像のロード:ImageLoaderUtils.displayImage(FilePrefix.ASSETS, "ic_pulish_channel.png", ivLoadingFlash,ishouApplication.loadingOptionsPublishChinal);
drawableピクチャのロード:ImageLoaderUtils.displayImage(FilePrefix.DRAWABLE, ""+R.drawable.ic_launch, ivLoadingFlash,ishouApplication.loadingOptions);