使用Fresco下载图片

来源:互联网 发布:淘宝店铺过户条件 编辑:程序博客网 时间:2024/05/18 11:07
    private void downLoadImg(Uri uri) {        ImageRequest imageRequest = ImageRequestBuilder.newBuilderWithSource(uri).setProgressiveRenderingEnabled(true).build();        ImagePipeline imagePipeline = Fresco.getImagePipeline();        DataSource<CloseableReference<CloseableImage>> dataSource = imagePipeline.fetchDecodedImage(imageRequest, this);        dataSource.subscribe(new BaseBitmapDataSubscriber() {            @Override            public void onNewResultImpl(@Nullable Bitmap bitmap) {                //bitmap即为下载所得图片            }            @Override            public void onFailureImpl(DataSource dataSource) {            }        }, CallerThreadExecutor.getInstance());        GenericDraweeHierarchy hierarchy = new GenericDraweeHierarchyBuilder(getResources())                .setFadeDuration(300)//                .setPlaceholderImage(defaultDrawable)//                .setFailureImage(defaultDrawable)                .setProgressBarImage(new ProgressBarDrawable())                .build();        DraweeHolder<GenericDraweeHierarchy> draweeHolder = DraweeHolder.create(hierarchy, this);        PipelineDraweeController controller = (PipelineDraweeController) Fresco.newDraweeControllerBuilder()                .setOldController(draweeHolder.getController())                .setImageRequest(imageRequest)                .build();        controller.onClick();    }

0 0
原创粉丝点击