CoordinatorLayout显示隐藏ToolBar

来源:互联网 发布:死侍 知乎 编辑:程序博客网 时间:2024/05/17 07:59

转载:http://blog.csdn.net/android_zhengyongbo/article/details/70140850
刚开始弄得时候在网上找了好多博客,但是因为小编对material不甚了解,所以及时有参考还是走了很多弯路,特此记录一下,先上代码:

1.布局文件

<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/coordinator_layout"    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:fitsSystemWindows="true">        <TextView            android:id="@+id/toolBar"            android:layout_width="match_parent"            android:layout_height="?attr/actionBarSize"            android:background="#30469b"            app:layout_scrollFlags="scroll|enterAlways" />    </android.support.design.widget.AppBarLayout>    <android.support.v7.widget.RecyclerView        android:id="@+id/recycler_view"        android:layout_width="match_parent"        android:layout_height="match_parent"        app:layout_behavior="@string/appbar_scrolling_view_behavior">    </android.support.v7.widget.RecyclerView></android.support.design.widget.CoordinatorLayout>

首先CoordinatorLayout作为父节点,AppBarLayout包裹需要滑动显示隐藏的ToolBar,因为小编不擅长使用系统的ToolBar,所以写了一个控件TextView模拟ToolBar。下面添加一个可以滑动的视图,可以是RecyclerView,NestedScrollView(注意ListView的朋友这里使用listView实现滑动是无法显示隐藏ToolBar的,GridView估计也不行,具体原因小编也不清楚,小编就因为这个原因走了好多弯路)。

下面是最重要的

1.在AppBarLayout中加入一下代码:android:fitsSystemWindows="true"--------------------------------2.在TextView中加入以下代码:   app:layout_scrollFlags="scroll|enterAlways"-------------------------------------------3.添加滚动视图(例如RecyclerView,NestedScrollView)并且添加以下代码:app:layout_behavior="@string/appbar_scrolling_view_behavior"----------------------------------------------------------

ok,现在滑动滚动视图就可以实现ToolBar的显示隐藏了。

1 0