2
votes

get () dans Picasso ne peut pas être appliqué à (android.content.context)

J'ai le code suivant sur android studio, après avoir suivi un tutoriel vidéo. Cependant, dans la vidéo du didacticiel, le téléchargeur a utilisé:

implémentation 'com.android.picasso: picasso: 2.5.2'

alors que je devais utiliser p >

public class adapter extends RecyclerView.Adapter<adapter.viewHolder> {
    private Context mContext;
    private ArrayList<ItemActivity> mExampleList;

    public adapter(Context context, ArrayList<ItemActivity> exampleList)
    {
        mContext = context;
        mExampleList = exampleList;
    }

    @NonNull
    @Override
    public viewHolder onCreateViewHolder(@NonNull ViewGroup parent, int 
    viewType) {
            View v = 
LayoutInflater.from(mContext).inflate(R.layout.itemlayout, parent, false);
        return new viewHolder(v);
    }

    @Override
    public void onBindViewHolder(@NonNull viewHolder holder, int position) 
    {
        ItemActivity currentItem = mExampleList.get(position);

        String imageUrl = currentItem.getImageUrl();
        String creatorName = currentItem.getCreator();
        int likeCount = currentItem.getLikeCount();

        holder.mTextViewCreator.setText(creatorName);
        holder.mTextViewLikes.setText("Likes: "+likeCount);

        Picasso.get(mContext).load(imageUrl). 
        fit().centerInside.into(holder.mImageView);//get() in picasso 
                                                     cannot be applied to 
                                                 (android.content.context)
    }

    @Override
    public int getItemCount() {
        return mExampleList.size();
    }

    public class viewHolder extends RecyclerView.ViewHolder
    {
        public ImageView mImageView;
        public TextView mTextViewCreator;
        public TextView mTextViewLikes;

        public viewHolder(@NonNull View itemView) {
            super(itemView);
            mTextViewCreator = itemView.findViewById(R.id.image_view);
            mImageView = itemView.findViewById(R.id.text_view_creator);
            mTextViewLikes = itemView.findViewById(R.id.text_view_likes);
        }
    }

}

Classe d'adaptateur

implementation 'com.squareup.picasso:picasso:2.71828'

Comme indiqué ci-dessus, la ligne Picasso me donne l'erreur: get () dans picasso ne peut pas être appliqué à (android.content.context)

Merci!


0 commentaires

3 Réponses :


2
votes

Depuis Picasso 2.71828 , vous n'avez pas besoin de fournir Context dans Picasso.get()

Pour plus d'informations, consultez le ChangeLog


0 commentaires

2
votes

Picasso # get () n'a pas de contexte. Si vous avez besoin d'utiliser un contexte différent, vous pouvez utiliser new Picasso.Builder (mContext) .build ();

Ou, Picasso.get () suffira.


0 commentaires

3
votes

Picasso avec (Contexte) a été renommé en get()

Vérifiez ce commit


0 commentaires