我的应用程序在AppBarLayout中有3种布局:工具栏,FrameLayout和LinearLayout。当我向上滚动NestedScrollView时,有必要隐藏FrameLayout,但Toolbar必须留在他的位置,而LinearLayout必须在Toolbar下。在当前情况下,没有任何滚动。
<?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"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorFilters"
/>
<FrameLayout
android:id="@+id/userinfo_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll|snap" />
<LinearLayout
android:id="@+id/navigation_tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
/>
</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">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lineSpacingExtra="8dp"
android:padding="30dp"
android:text="@string/fully_text"
android:textSize="20sp" />
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
答案 0 :(得分:0)
使用以下代码,可以肯定地工作 根据您的需要模制
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.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:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:focusable="true"
android:focusableInTouchMode="true"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:background="@color/white"
app:contentInsetStartWithNavigation="0.0dip"
app:layout_scrollFlags="enterAlways|scroll"
app:titleTextColor="@color/black"
android:contentInsetEnd="0dp"
android:contentInsetLeft="0dp"
android:contentInsetRight="0dp"
android:contentInsetStart="0dp"
app:contentInsetEnd="0dp"
app:contentInsetLeft="0dp"
app:contentInsetRight="0dp"
app:contentInsetStart="0dp" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageButton
android:id="@+id/close_activity"
android:layout_width="?actionBarSize"
android:layout_height="?actionBarSize"
android:background="?selectableItemBackgroundBorderless"
android:tint="@color/my_green"
app:srcCompat="@drawable/ic_close_black_24dp"
tools:ignore="VectorDrawableCompat" />
<TextView
android:textSize="20dp"
android:textStyle="bold"
android:textColor="@color/black"
android:text="Profile"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
<androidx.core.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="none"
android:scrollingCache="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lineSpacingExtra="8dp"
android:padding="30dp"
android:text="@string/fully_text"
android:textSize="20sp" />
</androidx.core.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
希望有帮助
快乐的编码:)
有问题
我认识