You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin中Fragment内RecyclerView指定项跳转至不同Activity

问题描述

现有一个包含TabLayout的MainActivity,TabLayout中嵌入了Fragment,Fragment内有RecyclerView。目前已实现RecyclerView所有项跳转至OtherActivity1并传递数据,现在需要调整为:仅RecyclerView的第4项(Item4)跳转至OtherActivity2且不传递数据,其余项保持原有跳转逻辑。

解决方案

只需在RecyclerView的点击事件回调中,根据**position(索引从0开始)**判断当前点击项,分别处理跳转逻辑即可。具体修改如下:

修改TAB1Fragment.kt中的actionTAB1方法

在onItemClick回调内添加条件判断:当position == 3(对应第4项)时启动OtherActivity2;其余项保持原逻辑,启动OtherActivity1并传递数据。

修改后的代码:

// Start - Action putExtras
fun actionTAB1() {
    tab1Adapter.setOnClickItemListenerTAB1(object : OnItemClickListener {
        override fun onItemClick(item: View, position: Int) {
            if (position == 3) {
                // 第4项跳转OtherActivity2,无需传参
                val intent = Intent(context, OtherAtivity2::class.java)
                startActivity(intent)
            } else {
                // 其余项保持原逻辑,跳转OtherActivity1并传递数据
                val selectedItem = tab1Adapter.getTAB1()[position]
                val i = Intent(context, OtherAtivity1::class.java)
                i.putExtra("prodNameTAB1", selectedItem.getProdNameTAB1())
                i.putExtra("prodPriceTAB1", selectedItem.getProdPriceTAB1())
                i.putExtra("prodImgTAB1", selectedItem.getProdImgTAB1())
                startActivity(i)
            }
        }
    }) 
} // End - Action putExtras

可选优化:按内容匹配而非位置

如果后续Item4的位置可能变动,可通过匹配项名称来判断,避免位置变化导致逻辑失效:

override fun onItemClick(item: View, position: Int) {
    val selectedItem = tab1Adapter.getTAB1()[position]
    if (selectedItem.getProdNameTAB1() == "RecyclerView Item4") {
        val intent = Intent(context, OtherAtivity2::class.java)
        startActivity(intent)
    } else {
        val i = Intent(context, OtherAtivity1::class.java)
        i.putExtra("prodNameTAB1", selectedItem.getProdNameTAB1())
        i.putExtra("prodPriceTAB1", selectedItem.getProdPriceTAB1())
        i.putExtra("prodImgTAB1", selectedItem.getProdImgTAB1())
        startActivity(i)
    }
}

内容的提问来源于stack exchange,提问作者BUdiAKmal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 17:57:18