Tag: 壁画

使用DataSubscriber加载gif的壁画

我想通过DataSubscriber通过Fresco.G获取GIF,但当我得到的CloseableAnimatedImage,我不知道如何得到它的位图。 public void getBitmap(String url, final OnBitmapFetchedListener listener) { ImageRequest request = ImageRequest.fromUri(Uri.parse(url)); final ImagePipeline imagePipeline = Fresco.getImagePipeline(); DataSource<CloseableReference<CloseableImage>> dataSource = imagePipeline.fetchDecodedImage(request, null); DataSubscriber dataSubscriber = new BaseDataSubscriber<CloseableReference<CloseableImage>>() { @Override protected void onNewResultImpl(DataSource<CloseableReference<CloseableImage>> closeableReferenceDataSource) { CloseableReference<CloseableImage> imageReference = closeableReferenceDataSource.getResult(); if (imageReference != null) { try { CloseableImage image = imageReference.clone().get(); if (image instanceof CloseableAnimatedImage) { […]

使用Fresco在RecyclerView中闪烁的Gif

我使用Fresco在Recyclerview中加载gif。 这是我的kotlin代码: fun loadResizeImage(uri: Uri, view: SimpleDraweeView, width: Int, height: Int) { val request = ImageRequestBuilder.newBuilderWithSource(uri) .setResizeOptions(ResizeOptions(width, height)).build() val controller = Fresco.newDraweeControllerBuilder() .setOldController(view.controller) .setImageRequest(request) .build() view.controller = controller 我不玩GIF,我只是把它作为一个静态的图像加载。 但是当我调用notifydatasetchanged ,gif notifydatasetchanged了一下。 我已经设置supportsChangeAnimations为false,只有GIF闪烁。 任何人都可以帮我吗?