著论准过秦,作赋拟子虚。这篇文章主要讲述android 新控件 AppBarLayout 使用相关的知识,希望能为你提供帮助。
AppBarLayout 是继承LinerLayout实现的一个ViewGroup容器组件,它是为了Material Design设计的App Bar,支持手势滑动操作。
【android 新控件 AppBarLayout 使用】默认的AppBarLayout是垂直方向的,它的作用是把AppBarLayout包裹的内容都作为AppBar。代码布局如下:
< android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content"> < android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize"> < /android.support.v7.widget.Toolbar> < android.support.design.widget.TabLayout android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_scrollFlags="scroll" app:tabIndicatorColor="@android:color/holo_red_dark" app:tabSelectedTextColor="@android:color/holo_red_dark" app:tabTextColor="@android:color/black" /> < /android.support.design.widget.AppBarLayout>
此处将Toolbar 和Tablayout的组合部分共同构成 AppBar的效果。 AppBarLayout必须作为Toolbar的父布局容器。AppBarLayout支持手势滑动效果的,要跟CoordinatorLayout配合使用。
< ?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" android:id="@+id/main_content" android:layout_width="match_parent" android:layout_height="match_parent"> < android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content"> < android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:layout_scrollFlags="scroll|enterAlways" /> < android.support.design.widget.TabLayout android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabGravity="fill" /> < /android.support.design.widget.AppBarLayout> < !--可滑动的布局内容--> < android.support.v7.widget.RecyclerView android:id="@+id/recyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> < android.support.design.widget.FloatingActionButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="https://www.songbingjia.com/android/@drawable/ic_discuss" android:layout_gravity="bottom|end"/> < /android.support.design.widget.CoordinatorLayout>
app:layout_scrollFlags=”scroll|enterAlways” 属性来确定哪个组件是可滑动的。layout_scrollFlags的属性有
- scroll: 所有想滚动出屏幕的view都需要设置这个flag- 没有设置这个flag的view将被固定在屏幕顶部。
- enterAlways: 这个flag让任意向下的滚动都会导致该view变为可见,启用快速“返回模式”。
- enterAlwaysCollapsed: 当你的视图已经设置minHeight属性又使用此标志时,你的视图只能已最小高度进入,只有当滚动视图到达顶部时才扩大到完整高度。
- exitUntilCollapsed: 滚动退出屏幕,最后折叠在顶端。
推荐阅读
- 支付宝APP支付里设置应用网关和授权回调地址是不必填的
- Android点击EditText文本框之外任何地方隐藏键盘的解决办法
- 在Android Studio 的External Tools添加javap命令
- The android command is deprecated
- Android adb设置
- DOM——创建节点及节点属性与内部插入append()和appendTo()
- APICloud的APP定制服务为什么与众不同?
- 车智汇系统车智会模式公众号与App的扩展开发
- 支付宝app支付java后台流程及原理分析