Android layout 如何在android中启用或禁用可折叠工具栏布局中的折叠? **主布局**: **版面**:文章列表内容
如果回收器视图中没有足够的数据,我想禁用标题字段的折叠(折叠工具栏布局中的折叠标题-文本视图)。ie只有在需要更多数据/滚动时才会发生折叠,否则应禁用折叠。您可以通过修改Android layout 如何在android中启用或禁用可折叠工具栏布局中的折叠? **主布局**: **版面**:文章列表内容,android-layout,material-design,android-collapsingtoolbarlayout,Android Layout,Material Design,Android Collapsingtoolbarlayout,如果回收器视图中没有足够的数据,我想禁用标题字段的折叠(折叠工具栏布局中的折叠标题-文本视图)。ie只有在需要更多数据/滚动时才会发生折叠,否则应禁用折叠。您可以通过修改折叠工具栏布局的应用程序:布局滚动标志属性来“禁用”此折叠行为 作为布局属性,这是父级的布局参数(即AppBarLayout.LayoutParams)的一部分。正如所料,此类公开了方法setScrollFlags() 要禁用折叠,请执行以下操作: **Main Layout**: <android.support.de
折叠工具栏布局
的应用程序:布局滚动标志
属性来“禁用”此折叠行为
作为布局
属性,这是父级的布局参数
(即AppBarLayout.LayoutParams
)的一部分。正如所料,此类公开了方法setScrollFlags()
要禁用折叠,请执行以下操作:
**Main Layout**:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/White">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:contentScrim="@color/white"
app:titleEnabled="false"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<TextView
android:id="@+id/collapsing_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:adjustViewBounds="true"
android:text="Journal Name, Volume No, Issue"
android:textSize="40sp"
android:textStyle="bold"
android:textColor="@color/black"
android:padding="30dp"
android:layout_marginTop="?attr/actionBarSize"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/primary"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<include layout="@layout/article_listing_content"/>
</android.support.design.widget.CoordinatorLayout>
**Layout**:article_listing_content
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<RelativeLayout
android:id="@+id/rv_container"
android:visibility="visible"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:longClickable="true"
android:elevation="50dp"
android:scrollbars="vertical"/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/error_msg_container"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/error_msg"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</RelativeLayout>
</RelativeLayout>
要重新启用折叠,只需将setScrollFlags()
调用替换为传入原始标志的调用:
CollapsingToolbarLayout collapsing =
(CollapsingToolbarLayout) findViewById(R.id.toolbar_layout);
AppBarLayout.LayoutParams params =
(AppBarLayout.LayoutParams) collapsing.getLayoutParams();
params.setScrollFlags(0);
collapsing.setLayoutParams(params);
是的,但您如何知道内容是否适合屏幕?
params.setScrollFlags(AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL | AppBarLayout.LayoutParams.SCROLL_FLAG_EXIT_UNTIL_COLLAPSED);