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

如何在横向滚动LinearLayout中为RecyclerView添加固定顶部Header

固定顶部Header+横向滚动列表的实现方法

最简单的解决方案:拆分布局

别把Header当成RecyclerView的item,直接用垂直布局把Header和横向RecyclerView分开:

布局代码示例

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <!-- 固定在顶部的Header -->
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="你的Header内容"
        android:padding="16dp"
        android:background="#eeeeee"/>

    <!-- 横向滚动的RecyclerView -->
    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/horizontal_list"
        android:layout_width="match_parent"
        android:layout_height="120dp"/> <!-- 可根据需求设固定高度或wrap_content -->
</LinearLayout>

代码设置横向滚动

在Activity/Fragment里给RecyclerView设置横向布局管理器:

// Kotlin示例
val layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false)
horizontal_list.layoutManager = layoutManager
horizontal_list.adapter = 你的适配器实例
// Java示例
LinearLayoutManager layoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
horizontal_list.setLayoutManager(layoutManager);
horizontal_list.setAdapter(你的适配器实例);

关键说明

如果把Header作为RecyclerView的item,它会和其他列表项一样参与横向滚动,就会出现你当前遇到的问题——Header跟着列表滚动、没法固定在顶部。拆分布局是最直接、最不容易出问题的实现方式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 07:31:17