安卓吸顶效果

当列表滑动时,图片逐渐消失,toolBar悬停在头部。

java 复制代码
<?xml version="1.0" encoding="utf-8"?>

    <androidx.coordinatorlayout.widget.CoordinatorLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true">

        <com.google.android.material.appbar.AppBarLayout
            android:id="@+id/app_bar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fitsSystemWindows="true">


            <com.google.android.material.appbar.CollapsingToolbarLayout
                android:id="@+id/toolbar_layout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:fitsSystemWindows="true"
                app:layout_scrollFlags="scroll|exitUntilCollapsed"
                app:statusBarScrim="@android:color/transparent">

                <ImageView
                    android:id="@+id/sortbanner"
                    android:layout_width="match_parent"
                    android:layout_height="80dp"
                    android:scaleType="fitXY"
                    android:src="@drawable/back_vip" />

            </com.google.android.material.appbar.CollapsingToolbarLayout>

            <LinearLayout
                android:id="@+id/llsort"

                android:layout_width="match_parent"
                android:layout_height="40dp"
                android:background="@color/purple_200"
                android:gravity="center_vertical">

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:gravity="center"
                    android:text=""
                    android:textColor="#5A5A5A" />

                <TextView
                    android:id="@+id/tv"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:text="综合"
                    android:textColor="#5A5A5A" />

                <TextView
                    android:id="@+id/tv1"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:text="销量"
                    android:textColor="#5A5A5A" />


                <RelativeLayout
                    android:id="@+id/rl"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1.2"
                    android:gravity="right"
                    android:paddingRight="20dp">

                    <TextView
                        android:id="@+id/tv3"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerVertical="true"
                        android:layout_toLeftOf="@+id/ft_cb"
                        android:text="价格"
                        android:textColor="#5A5A5A" />

                    <ImageView
                        android:id="@+id/ft_cb"
                        android:layout_width="wrap_content"
                        android:layout_height="16dp"
                        android:layout_alignParentRight="true"
                        android:layout_centerVertical="true"
                        android:button="@null"
                        android:src="@drawable/sortdown" />
                </RelativeLayout>

            </LinearLayout>
        </com.google.android.material.appbar.AppBarLayout>

        <androidx.core.widget.NestedScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_behavior="@string/appbar_scrolling_view_behavior">


                <androidx.recyclerview.widget.RecyclerView

                    android:id="@+id/goodsRecyclerView"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" />


        </androidx.core.widget.NestedScrollView>


    </androidx.coordinatorlayout.widget.CoordinatorLayout>
java 复制代码
public class MainActivity extends AppCompatActivity {
    RecyclerView recyclerView;
    private List<String> list;
    private NormalAdapter normalAdapter;
    private LinearLayoutManager linearLayoutManager;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        recyclerView=findViewById(R.id.goodsRecyclerView);
        initList();
        initView();
    }

    private void initList() {
        list = new ArrayList<>();
        for (int i = 1; i <= 100; i++) {
            list.add(i + "");
        }
    }

    private void initView() {
        linearLayoutManager = new LinearLayoutManager(this);
        normalAdapter = new NormalAdapter(list);

        recyclerView.setLayoutManager(linearLayoutManager);
        recyclerView.setNestedScrollingEnabled(false);
        recyclerView.setAdapter(normalAdapter);
    }
}

demo地址

相关推荐
顾林海29 分钟前
Android ClassLoader加载机制详解
android·面试·源码
用户20187928316730 分钟前
🎨 童话:Android画布王国的奇妙冒险
android
whysqwhw1 小时前
OkHttp框架的全面深入架构分析
android
你过来啊你1 小时前
Android App冷启动流程详解
android
泓博2 小时前
KMP(Kotlin Multiplatform)改造(Android/iOS)老项目
android·ios·kotlin
移动开发者1号2 小时前
使用Baseline Profile提升Android应用启动速度的终极指南
android·kotlin
移动开发者1号2 小时前
解析 Android Doze 模式与唤醒对齐
android·kotlin
菠萝加点糖4 小时前
Kotlin Data包含ByteArray类型
android·开发语言·kotlin
IAM四十二9 天前
Google 端侧 AI 框架 LiteRT 初探
android·深度学习·tensorflow
CYRUS_STUDIO10 天前
手把手教你用 Chrome 断点调试 Frida 脚本,JS 调试不再是黑盒
android·app·逆向