作业2:将recyclerView的每个item增加点击功能,实现点击后跳转

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

结果展现:

初步效果
初步效果
​​​​​
细节优化

关键代码解析:

跳转并携带参数:

   public void onBindViewHolder(MyAdapter.LinearViewHolder holder, int position) {
        //从列表中获得上下文
        String name=list.get(position);
        // 设置文本视图的内容  
        holder.textView.setText(name);
        //监听器
        holder.textView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //创建Intent对象
                Intent intent=new Intent(mContext,MainActivity1.class);
                //传递数据
                intent.putExtra("name",name);
                //开始跳转
                mContext.startActivity(intent);
            }
        });
    }

接收参数: 

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //绑定对象
        setContentView(R.layout.activity_1);
        button = findViewById(R.id.button);
        textView = findViewById(R.id.textView);
        //接收参数
        Intent intent = getIntent();
        String str = intent.getStringExtra("name");
        textView.setText(str);
    }

 总结:

        这次实验就到这里,其实并未完成,虽然这次实验只是在上一次的框架上展示Activity的跳转,但是其实更多的是对之前知识的一个总和,点击监控器啊,LinearLayout框架啊,Adapter适配器里的各种函数等等

        这次遗留的问题有:
                1.聊天界面的布局:比如点击发送消息就刷一下,显示出来。
                2.top的锁定:目前我的界面,如果打开输入法的话,top(显示的名字)会被顶上去

         在课下我还会继续研究,下次实验中我会展示出来。

代码仓库:周鑫康/安卓开发1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是 Kotlin 代码示例: 1. 在 RecyclerView 的 Adapter 中为每个 item 添加点击事件监听器: ```kotlin class MyAdapter(private val context: Context, private val itemList: List<Item>) : RecyclerView.Adapter<MyAdapter.ViewHolder>() { // 1. 定义一个点击事件监听器接口 interface OnItemClickListener { fun onItemClick(item: Item) } // 2. 声明一个 OnItemClickListener 变量 private var listener: OnItemClickListener? = null // 3. 提供一个公共的设置监听器的方法 fun setOnItemClickListener(listener: OnItemClickListener) { this.listener = listener } // ... override fun onBindViewHolder(holder: ViewHolder, position: Int) { val item = itemList[position] holder.bind(item) // 4. 为 item 添加点击事件监听器 holder.itemView.setOnClickListener { listener?.onItemClick(item) } } // ... } ``` 2. 在 Activity 中设置 RecyclerView 和 Adapter,并实现 OnItemClickListener 接口: ```kotlin class MainActivity : AppCompatActivity(), MyAdapter.OnItemClickListener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val itemList = // 从数据源中获取 item 列表 val recyclerView = findViewById<RecyclerView>(R.id.recyclerView) recyclerView.layoutManager = LinearLayoutManager(this) val adapter = MyAdapter(this, itemList) recyclerView.adapter = adapter // 5. 设置 OnItemClickListener adapter.setOnItemClickListener(this) } // 6. 实现 OnItemClickListener 接口的方法,跳转到相应的 Activity override fun onItemClick(item: Item) { val intent = Intent(this, ItemDetailActivity::class.java) intent.putExtra("item_id", item.id) startActivity(intent) } } ``` 以上就是 Kotlin 中 RecyclerView 点击 item 跳转到 Activity 页面的实现方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值