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

更多相关文章

  1. 记录状态栏与布局重合,状态栏颜色问题
  2. 第九节(Activity布局初步二--嵌套布局)
  3. android tabHost布局之一 不继承TabActivity并以布局文件进行布
  4. Android ListView 分类显示(二)多布局显示
  5. android属性android:largeHeap
  6. android studio 无法在可视化页面预览布局文件

随机推荐

  1. 你觉得Android又凉了?那带你看下2020年And
  2. VINS在Android上的实现
  3. Android实现自定义测滑栏
  4. 用Ant手动打包android程序,android分包机
  5. 一篇文章带你领略Android混淆的魅力
  6. Android(安卓)UI 模式(patterns)
  7. 从Titlebar到Actionbar再到Toolbar
  8. Android(安卓)强弱指针
  9. Unity调用Android(安卓)jar包方法——(二
  10. AndroidStudio3.5下用NDK编绎VulkanScene