How can I pass data from an Activity back to the RecyclerView adapter. I've clicked one of the row in the recycler view and started a new activity. From the new activity how can I pass an object back to adapter and update the row from where I've started the activity
public class MoviesAdapter extends RecyclerView.Adapter<MoviesAdapter.MyViewHolder> {
private List<Movie> moviesList;
public class MyViewHolder extends RecyclerView.ViewHolder {
public TextView title, year, genre;
LinearLayout layout;
public MyViewHolder(View view) {
super(view);
title = (TextView) view.findViewById(R.id.title);
genre = (TextView) view.findViewById(R.id.genre);
year = (TextView) view.findViewById(R.id.year);
layout = (LinearLayout) view.findViewById(R.id.layout);
}
}
public MoviesAdapter(List<Movie> moviesList) {
this.moviesList = moviesList;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.movie_list_row, parent, false);
return new MyViewHolder(itemView);
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
Movie movie = moviesList.get(position);
holder.title.setText(movie.getTitle());
holder.genre.setText(movie.getGenre());
holder.year.setText(movie.getYear());
holder.layout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mContext.startActivity(new Intent(mContext, MovieDetailsActivity.class));
}
});
}
@Override
public int getItemCount() {
return moviesList.size();
}
}
From the new Activity I've created I'll edit the movie details and once clicked OK I need to pass the Movie object back to adapter and update the corresponding row.