Comment accéder à Drawable lors de l'utilisation de Picasso?

Je suis en utilisant le Picasso cadre de poignée de chargement de l'image dans mon application Android.
Après l'image est chargée, j'ai besoin d'accéder à la Drawable d'appliquer certaines opérations de masquage. Le problème est que Picasso convertit le Drawable à un PicassoDrawable, et une distribution simple retour à Drawable ne fonctionne pas.

C'est le code que j'ai:

        Picasso.with(mContext).load(image.getPath()).into(mImageView, new Callback() {

            @Override
            public void onSuccess() {

                Util.applyMask(imageView);
            }

            @Override
            public void onError() {
            }
        }); 

et l'Util.applyMask(ImageView) méthode:

public static void applyMask(ImageView imageView) {

    //this is where a class cast exception happens since it's actually a PicassoDrawable and not a Drawable
    Bitmap mainImage = ((BitmapDrawable) imageView.getDrawable()).getBitmap();

//... 
}

Une solution possible est donnée par Jake Wharton dans cette github question: https://github.com/square/picasso/issues/38

Pour résumer, la solution est la suivante: "Si vous voulez accéder à l'image directement, alors vous aurez besoin d'utiliser la Cible des rappels. Le PicassoDrawable est utilisé pour permettre à la décoloration et l'indicateur de correction."

Je ne suis pas exactement sûr de la façon d'accéder à la Cible de rappel. Quelqu'un sait comment résoudre ce problème?

Grâce.

source d'informationauteur Henrique