7.1 如何点击recyclerView 的某个项目 然后跳到相应的页面

该博客介绍了如何在Android应用中,当用户点击RecyclerView的一个项目时,实现跳转到相应的详细页面。主要方法包括使用Bundle传递值和通过静态常量进行数据传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1: 可以通过bundle 来传递值,
2: 也可以通过application 来传递值。

3: 也可以通过静态常量来传值


1: 可以通过bundle 来传递值,

package com.qiushibaike.youyaoqigreate.adapter;

import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.service.notification.NotificationListenerService;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.facebook.drawee.view.SimpleDraweeView;
import com.qiushibaike.youyaoqigreate.R;
import com.qiushibaike.youyaoqigreate.activity.LeiBieXiJieActivity;
import com.qiushibaike.youyaoqigreate.entity.LeiBieEntity;
import com.qiushibaike.youyaoqigreate.fragments.LeiBieFragment;

import java.util.ArrayList;
import java.util.Collection;

/**
 * Created by Kodulf on 2016/2/27.
 */
public class LeiBieAdapter extends RecyclerView.Adapter<LeiBieAdapter.LeiBieViewHolder>{

    Context context;
    ArrayList<LeiBieEntity.DataEntity.ReturnDataEntity.RankinglistEntity> list;


    public LeiBieAdapter(Context context,ArrayList<LeiBieEntity.DataEntity.ReturnDataEntity.RankinglistEntity> list){
        this.context = context;
        this.list = list;
    }
    @Override
    public LeiBieViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.item_leibie,parent,false);

        return new LeiBieViewHolder(view);
    }

    @Override
    public void onBindViewHolder(LeiBieViewHolder holder, int position) {
        LeiBieEntity.DataEntity.ReturnDataEntity.RankinglistEntity dataEntity = list.get(position);
        holder.simpleDraweeView.setImageURI(Uri.parse(dataEntity.getCover()));
        holder.argCon=dataEntity.getArgCon();
        holder.argName=dataEntity.getArgName();
        holder.argValue = dataEntity.getArgValue();
    }

    public void addAll(Collection<? extends LeiBieEntity.DataEntity.ReturnDataEntity.RankinglistEntity> coll){
        int size = list.size();
        list.addAll(coll);
        notifyItemRangeChanged(size,coll.size());
    }
    @Override
    public int getItemCount() {
        return list.size();
    }

    public class LeiBieViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
        private SimpleDraweeView simpleDraweeView;
        private String argCon;
        private String argName;
        private String argValue;

        public LeiBieViewHolder(View itemView) {
            super(itemView);
            simpleDraweeView = (SimpleDraweeView)itemView.findViewById(R.id.leibie_simpledraweeview);
            simpleDraweeView.setAspectRatio(1);
            simpleDraweeView.setOnClickListener(this);
            simpleDraweeView.setTag(this);
        }


        @Override
        public void onClick(View v) {
            LeiBieViewHolder tag = (LeiBieViewHolder)v.getTag();
            Intent intent  = new Intent(v.getContext(),LeiBieXiJieActivity.class);
            intent.putExtra("argCon",tag.argCon);
            intent.putExtra("argName",tag.argName);
            intent.putExtra("argValue",tag.argValue);
            v.getContext().startActivity(intent);
        }
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值