bumptech/glide

Is there is any way to listen for the current GIF Frame while playing GIF?

Open

#2 524 ouverte le 27 oct. 2017

Voir sur GitHub
 (10 commentaires) (0 réactions) (0 assignés)Java (6 176 forks)batch import
GIFenhancementhelp wanted

Métriques du dépôt

Stars
 (35 023 stars)
Métriques de merge PR
 (Merge moyen 4j 10h) (11 PRs mergées en 30 j)

Description

I am using this code in Fresco. I want to switch to Glide

DraweeController controller = Fresco.newDraweeControllerBuilder()
                .setUri(uri)
                .setAutoPlayAnimations(true)
                .setControllerListener(new BaseControllerListener<ImageInfo>() {
                    @Override
                    public void onFinalImageSet(String id, ImageInfo imageInfo, Animatable animatable) {
                        ((SimpleDraweeView) mGIFView).setAspectRatio((float) imageInfo.getWidth() / imageInfo.getHeight());

                        if (animatable != null && animatable instanceof AnimatedDrawable2) {
                            ((AnimatedDrawable2) animatable).setAnimationListener(

                                    new AnimationListener() {
                                        @Override
                                        public void onAnimationStart(AnimatedDrawable2 drawable) {

                                        }

                                        @Override
                                        public void onAnimationStop(AnimatedDrawable2 drawable) {

                                        }

                                        @Override
                                        public void onAnimationReset(AnimatedDrawable2 drawable) {

                                        }

                                        @Override
                                        public void onAnimationRepeat(AnimatedDrawable2 drawable) {

                                        }

                                        @Override
                                        public void onAnimationFrame(AnimatedDrawable2 drawable, int frameNumber) {
                                          //Current frame
                                        }

                                    });
                        }
                    }


                    @Override
                    public void onFailure(String id, Throwable throwable) {
                        super.onFailure(id, throwable);
                        Log.e("failed", throwable.getLocalizedMessage());
                    }
                }).build();

Guide contributeur