【问题标题】:Send data object from fragment to activity将数据对象从片段发送到活动
【发布时间】:2016-04-19 08:28:47
【问题描述】:

我有片段(电影)来显示 json 数据。现在我想将数据(对象)发送到活动(此类使显示完整信息)。但我不知道在方法 onClick 中获取和发送数据。谁能给我一些建议?多谢 。 这是我的代码。

public class FragmentFilmAdapter extends RecyclerView.Adapter<FragmentFilmAdapter.ViewHolder> {

    private List<InforFilm> inforFilms;
    ImageLoader imageLoader = AppController.getInstance().getmImageLoader();
    //contructor
    public FragmentFilmAdapter(List<InforFilm> inforFilms) {
        this.inforFilms = inforFilms;
    }
    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        NetworkImageView thumbNail;
        TextView gender;
        TextView rating;
        TextView title;
        TextView year;

        public ViewHolder(View view) {
            super(view);

            thumbNail = (NetworkImageView) view.findViewById(R.id.film_thumbnail);
            gender = (TextView) view.findViewById(R.id.film_genre);
            title = (TextView) view.findViewById(R.id.film_title);
            rating = (TextView) view.findViewById(R.id.film_rating);
            year = (TextView) view.findViewById(R.id.film_releaseYear);

        }
        @Override
        public void onClick(View v) {
        }
    }

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.fragment_film_item, parent, false);

        return new ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {

        InforFilm infor = inforFilms.get(position);

        holder.thumbNail.setImageUrl(infor.getThumbail(), imageLoader);
        holder.title.setText(infor.getTitle());
        holder.rating.setText(String.valueOf(infor.getRating()));
        holder.year.setText(String.valueOf(infor.getYear()));
        String genreStr = "";
        for (String str : infor.getGender()) {
            genreStr += str + ", ";
        }
        genreStr = genreStr.length() > 0 ? genreStr.substring(0,
                genreStr.length() - 2) : genreStr;
        holder.gender.setText(genreStr);
    }

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

【问题讨论】:

    标签: android android-intent fragment


    【解决方案1】:

    RecyclerView没有自己的onclick监听器,所以创建一个监听器接口并获取适配器位置。 请参考此链接它可能对您有所帮助 Getting recyclerview position and passing object on click

    【讨论】:

    • 我尝试使用 onclick 获取链接的示例,它可以工作。所以我想得到 objetc(数组列表)。但我不知道该怎么做?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-27
    相关资源
    最近更新 更多