Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将上下文传递给RecycleServiceAdapter_Android - Fatal编程技术网

Android 将上下文传递给RecycleServiceAdapter

Android 将上下文传递给RecycleServiceAdapter,android,Android,我刚刚开始学习android编程,我正在尝试将RSS提要中的URL加载到我的recycler视图中(我已经完成了)。我为自己设置的下一个任务是将RSS提要中的图像加载到RecyclerView中,但我在尝试将上下文传递给Picasso插件()时遇到了一些问题,甚至是为什么/getContext/getApplicationContext不起作用 这是我的适配器代码和毕加索插件的代码行 如有任何帮助/理解,将不胜感激 public class RVAdapter extends RecyclerV

我刚刚开始学习android编程,我正在尝试将RSS提要中的URL加载到我的recycler视图中(我已经完成了)。我为自己设置的下一个任务是将RSS提要中的图像加载到RecyclerView中,但我在尝试将上下文传递给Picasso插件()时遇到了一些问题,甚至是为什么/getContext/getApplicationContext不起作用

这是我的适配器代码和毕加索插件的代码行

如有任何帮助/理解,将不胜感激

public class RVAdapter extends RecyclerView.Adapter<RVAdapter.ApplicationViewHolder> {


public static class ApplicationViewHolder extends RecyclerView.ViewHolder {

    CardView cv;
    TextView personName;
    TextView personAge;
    TextView personReleasedate;
    ImageView imageUrl;

    ApplicationViewHolder(View itemView) {
        super(itemView);

        cv = (CardView) itemView.findViewById(R.id.cv);
        personName = (TextView) itemView.findViewById(R.id.person_name);
        personAge = (TextView) itemView.findViewById(R.id.person_age);
        personReleasedate = (TextView) itemView.findViewById(R.id.personReleaseDate);
        imageUrl = (ImageView) itemView.findViewById(R.id.postImageView);
    }
}

List<Application> applications;

RVAdapter(List<Application> applications) {
    this.applications = applications;
}

@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
    super.onAttachedToRecyclerView(recyclerView);
}

@Override
public ApplicationViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
    View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.cardviewrss, viewGroup, false);
    ApplicationViewHolder pvh = new ApplicationViewHolder(v);
    return pvh;
}

@Override
public void onBindViewHolder(ApplicationViewHolder applicationViewHolder, int i) {
    applicationViewHolder.personName.setText(applications.get(i).getName());
    applicationViewHolder.personAge.setText(applications.get(i).getArtist());
    applicationViewHolder.personReleasedate.setText(applications.get(i).getReleaseDate());
    Log.d("RVADAPTER", applications.get(i).getImageURL());
    Picasso.with(this).load(applications.get(i).getImageURL()).into(applicationViewHolder.imageUrl);
  //  applicationViewHolder.imageUrl.setImageBitmap(Picasso.with(context).load(applications.get(i).getImageURL()));
}

添加

List<Application> applications;
Context context;

RVAdapter(List<Application> applications, Context context) {
    this.applications = applications;
    this.context = context;
}
列出应用程序;
语境;
RVAdapter(列出应用程序、上下文){
这是应用程序=应用程序;
this.context=上下文;
}
并从活动/片段中传递它?

添加

List<Application> applications;
Context context;

RVAdapter(List<Application> applications, Context context) {
    this.applications = applications;
    this.context = context;
}
列出应用程序;
语境;
RVAdapter(列出应用程序、上下文){
这是应用程序=应用程序;
this.context=上下文;
}

并从activity/fragment传递它?

通过将上下文传递给构造函数来解决。对不起,浪费了大家的时间!您还可以通过从视图(例如,
applicationViewHolder.itemView.getContext()
)获取上下文来避免依赖关系,该视图通过将上下文传递给构造函数来解决。对不起,浪费了大家的时间!您还可以通过从视图中获取上下文(例如,
applicationViewHolder.itemView.getContext()
)来避免依赖关系