Android 5.0新控件 AppBarLayout | 嵌套布局 介绍及使用详情
16lz
2021-01-23
Android 5.0新控件 AppBarLayout | 嵌套布局 介绍及使用详情
extends LinearLayout
AppBarLayout is a vertical LinearLayout which implements many of the features of material designs app bar concept, namely scrolling gestures.
嵌套布局是一个垂直的LinearLayout,其实现了许多的材料设计应用栏概念的特征,像滚动手势
- AppBarLayout通常直接作为CoordinatorLayout的直接子View使用,否则它的大部分功能将失效。
- 它的子View通过setScrollFlags(int)或XML属性:app:layout_scrollFlags来设置滚动行为
下面是官方给出的事例
"http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> "match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> "wrap_content" android:layout_width="match_parent"> "scroll|enterAlways"/> "scroll|enterAlways"/>
我们来看下效果图
使用方法
AppBarLayout来自design兼容包,使用需要添加依赖。android studio 添加依赖如下:
dependencies { compile ‘com.android.support:design:22.2.0+‘}
首先,XML中添加布局文件
"match_parent" android:layout_height="match_parent"> "match_parent" android:layout_height="wrap_content" > "@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorTheme" android:contentInsetStart="0dp" app:layout_scrollFlags="scroll|enterAlways|snap"> "@+id/imageview_back" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingBottom="20dp" android:paddingLeft="5dp" android:paddingRight="20dp" android:paddingTop="20dp" android:src="@drawable/back"/> "wrap_content" android:layout_height="wrap_content" android:text="CoordinatorLayout" android:textColor="@android:color/white"/> "@+id/recyclerview" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
app:layout_behavior=”@string/appbar_scrolling_view_behavior”给滑动的布局添加滑动行为(behavior可以用系统提供的,也可自定义)
AppBarLayout的子View设置了app:layout_scrollFlags=”scroll|enterAlways|snap”属性,就会随滑动而显示与隐藏
对scrollFlags属性不熟悉的可以参考这篇文章
OK,这就完成了如效果图上的效果,可以自己尝试一下
官方API
完整代码点我下载GitHub
Thank you
- 以上仅本人学习中遇到的问题,如有更多意见欢迎随时交流 issues
- email:coderguoy@gmail.com
更多相关文章
- 记录状态栏与布局重合,状态栏颜色问题
- 第九节(Activity布局初步二--嵌套布局)
- android tabHost布局之一 不继承TabActivity并以布局文件进行布
- Android ListView 分类显示(二)多布局显示
- android属性android:largeHeap
- android studio 无法在可视化页面预览布局文件