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!
3 Réponses :
Depuis Picasso 2.71828
, vous n'avez pas besoin de fournir Context
dans Picasso.get()
Pour plus d'informations, consultez le ChangeLog
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.