Android图片缓存框架 - Fresco的ImageRequest (八)

目录

1.Fresco 简介

2. Fresco 文档

3. Fresco开发步骤

4. Fresco加载图片6种方式

5. Drawees xm属性设置

6 Fresco实现圆角或圆形图片

7. DraweeHierarchy设置

8. Fresco的DraweeController

9. ControllerListener 图片加载监听

10. Fresco的ImageRequest

10.1 设置缩略图Thumbnail

10.2 设置固定大小

10.3 高斯模糊

10.4 模糊变换

10.5 灰白变换

11 Fresco的显示GIF

12 Fresco的BasePostprocessor图片处理

13.Fresco设置和清除缓存


10. Fresco的ImageRequest

10.1 设置缩略图Thumbnail

 ImageRequest imageRequest = ImageRequestBuilder
                .newBuilderWithSource(Uri.parse(imgUrl1))
                .setLocalThumbnailPreviewsEnabled(true)
                .build();

DraweeController controller = Fresco.newDraweeControllerBuilder()
                .setLowResImageRequest(imageRequest)
                .setImageRequest(ImageRequest.fromUri(imgUrl2))
                .build();

draweeView.setController(controller);

10.2 设置固定大小

GenericDraweeHierarchy hierarchy = draweeView.getHierarchy();
hierarchy.setActualImageScaleType(ScalingUtils.ScaleType.CENTER);

ImageRequest imageRequest = ImageRequestBuilder
                .newBuilderWithSource(Uri.parse(imgUrl2))
                .setResizeOptions(new ResizeOptions(300, 300))
                .build();
DraweeController controller = Fresco.newDraweeControllerBuilder()
                .setImageRequest(imageRequest)
                .build();

draweeView.setController(controller);

10.3 高斯模糊

ImageRequest request = ImageRequestBuilder
                .newBuilderWithSource(Uri.parse(imgUrl1))
                .setPostprocessor(new IterativeBoxBlurPostProcessor(3, 3))
                .build();

AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
                .setOldController(draweeView.getController())
                .setImageRequest(request)
                .setAutoPlayAnimations(true)
                .setTapToRetryEnabled(true)
                .build();

draweeView.setController(controller);

10.4 模糊变换

ImageRequest request = ImageRequestBuilder.newBuilderWithSource(Uri.parse(imgUrl1))
                .setPostprocessor(new BlurPostProcessor(10, getApplicationContext()))
                .build();

AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
                .setOldController(draweeView.getController())
                .setImageRequest(request)
                .setAutoPlayAnimations(true)
                .setTapToRetryEnabled(true)
                .build();

draweeView.setController(controller);

10.5 灰白变换

mageRequest request = ImageRequestBuilder.newBuilderWithSource(Uri.parse(grayUrl))
                .setPostprocessor(new BlurPostProcessor(10, getApplicationContext()))
                .build();

AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
                .setOldController(draweeView.getController())
                .setImageRequest(request)
                .setAutoPlayAnimations(true)
                .setTapToRetryEnabled(true)
                .build();

draweeView.setController(controller);

 

你可能感兴趣的:(Android图片缓存框架,Android开发,Fresco)