移动开发技术作业2:recyclerView的点击跳转功能实现

一、作业目标

根据作业1,将recyclerView的每个item增加点击功能,点击后跳转到一个新的view展示信息。

二、技术说明

要实现作业目标,需要用到以下技术:

  • setOnClickListener:用于监听RecyclerView的每个item的点击事件;
  • intent:用于在点击item后跳转到新的View展示信息;
  • view:用于展示点击的item所对应的信息。

三、关键代码解析

1.为每个RecyclerView的item布局添加点击事件监听器,在onBindViewHolder函数中为itemView设置监听器,代码如下:

 public void onBindViewHolder(@NonNull Myholder holder, @SuppressLint("RecyclerView") int position) {
        String str=list1.get(position);
        holder.textView1.setText(str);
        holder.textView1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
             //处理点击事件

            }
        });

    }

2.在监听器中处理点击事件,获取当前点击的item的数据,然后跳转到新的Activity并将数据传递过去,代码如下:

        holder.textView1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //处理点击事件
                Intent intent=new Intent(context1,itemActivity.class);
                intent.putExtra("data",list1.get(position));
                context1.startActivity(intent);
            }
        });

3.在新的Activity中接收传递过来的数据并展示,代码如下:

public class itemActivity extends AppCompatActivity {
    TextView textView;
    Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_item);
        textView=findViewById(R.id.textView11);
        Intent intent=getIntent();
        String str2=intent.getExtras().getString("data");
        textView.setText(str2);
        button=findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                finish();
            }
        });
    }
}

四、运行结果截图

运行结果

五、小结

一开始我只实现了跳转功能,并没有考虑每个item跳转后显示不同的内容。在实现后一功能时,出现了内容实现不对应的问题,最后发现是intent传递错误。此次作业较为简单。

六、源码仓库地址

 https://gitee.com/xiaoye-jasmine-xin/ascode.git

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值