如何使用Universal-Image-Loader加载大小不变的图片
how to use Universal-Image-Loader to load picture that the size not changed
我使用框架Universal-Image-Loader从网上加载图片,练习前动态创建imageview,但我对它的结果并不满意。我的应用程序中显示的图片太小,不是原始尺寸。我不想改变图片的大小。所以我使用 WebView 加载图片 url 然后图片完美显示,但是当图片 many.please 时应用程序会卡住并停止帮助我,如何设置它的配置?也许应该重置图像视图?
有我的代码:
if(url!=null){
ImageView imageView = new ImageView(activity);
imageView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
imageView.setMinimumHeight(20);
imageView.setImageResource(R.drawable.loading);
// bad method
// WebView webView=new WebView(activity);
// webView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
// group.addView(webView);
// webView.loadUrl(url);
// webView.setWebViewClient(new WebViewClient(){
// @Override
// public boolean shouldOverrideUrlLoading(WebView view,
// String url) {
// // TODO Auto-generated method stub
// view.loadUrl(url);
// return true;
// }
//
// });
ImageLoader.getInstance().displayImage(url,imageView,options);
group.addView(imageView);
// IN Display image option set image scale type exactly
// below code help you in this image will be download according to imageView //width height
public static void initImageLoader(Context context) {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.picture)
.showImageForEmptyUri(R.drawable.picture)
.showImageOnFail(R.drawable.picture)
.cacheInMemory(true)
.cacheOnDisk(true)
.considerExifParams(true)
.imageScaleType(ImageScaleType.EXACTLY)
.build();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
.threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.discCacheFileNameGenerator(new Md5FileNameGenerator())
.tasksProcessingOrder(QueueProcessingType.LIFO)
.defaultDisplayImageOptions(options)
.build();
// Initialize ImageLoader with configuration.
ImageLoader.getInstance().init(config);
}
我使用框架Universal-Image-Loader从网上加载图片,练习前动态创建imageview,但我对它的结果并不满意。我的应用程序中显示的图片太小,不是原始尺寸。我不想改变图片的大小。所以我使用 WebView 加载图片 url 然后图片完美显示,但是当图片 many.please 时应用程序会卡住并停止帮助我,如何设置它的配置?也许应该重置图像视图?
有我的代码:
if(url!=null){
ImageView imageView = new ImageView(activity);
imageView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
imageView.setMinimumHeight(20);
imageView.setImageResource(R.drawable.loading);
// bad method
// WebView webView=new WebView(activity);
// webView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
// group.addView(webView);
// webView.loadUrl(url);
// webView.setWebViewClient(new WebViewClient(){
// @Override
// public boolean shouldOverrideUrlLoading(WebView view,
// String url) {
// // TODO Auto-generated method stub
// view.loadUrl(url);
// return true;
// }
//
// });
ImageLoader.getInstance().displayImage(url,imageView,options);
group.addView(imageView);
// IN Display image option set image scale type exactly
// below code help you in this image will be download according to imageView //width height
public static void initImageLoader(Context context) {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.picture)
.showImageForEmptyUri(R.drawable.picture)
.showImageOnFail(R.drawable.picture)
.cacheInMemory(true)
.cacheOnDisk(true)
.considerExifParams(true)
.imageScaleType(ImageScaleType.EXACTLY)
.build();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
.threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.discCacheFileNameGenerator(new Md5FileNameGenerator())
.tasksProcessingOrder(QueueProcessingType.LIFO)
.defaultDisplayImageOptions(options)
.build();
// Initialize ImageLoader with configuration.
ImageLoader.getInstance().init(config);
}