Android Material Design新控件我爱编程Android开发

CoordinatorLayout 相关属性笔记

2018-05-09  本文已影响1098人  颖字传说

本篇主要记录一下 CoordinatorLayout 相关属性(持续更新、整理)当然一些常用的属性就不作记录了(如,背景、宽高等)

CoordinatorLayout

app:layout_anchor   设置 CoordinatorLayout  的直接子控件的锚点(以某个 Coordinatorlayout直接或间接子控件 为参考设置本控件的位置),这个值通常设置为控件的id。

app:layout_anchorGravity   设置CoordinatorLayout  直接子控件 相对锚点的位置,值有 bottom、center、right、left、top等。

app:layout_behavior : CoordinatorLayout  的精华, 直接子控件使用,设置子控件的行为(如平移,缩放,位置,显示状态等)


app:layout_scrollFlags :效果显示,视图滚动时,Toolbar会隐藏,这个效果是Android Support Library里面,新增的CoordinatorLayout, AppBarLayout实现的。

通过AppBarLayout的子视图 的属性控制。这就是控制滑动时视图效果的属性。app:layout_scrollFlags有四个值

1、scroll: 所有想滚动出屏幕的view都需要设置这个flag, 没有设置这个flag的view将被固定在屏幕顶部。例如,TabLayout 没有设置这个值,将会停留在屏幕顶部。

2、enterAlways: 设置这个flag时,向下的滚动都会导致该view变为可见,启用快速“返回模式”。

3、enterAlwaysCollapsed: 当你的视图已经设置minHeight属性又使用此标志时,你的视图只能已最小高度进入,只有当滚动视图到达顶部时才扩大到完整高度。

4、exitUntilCollapsed: 滚动退出屏幕,最后折叠在顶端。


Toolbar

android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"

app:popupTheme="@style/ThemeOverlay.AppCompat.Light"

app:popupTheme,这个属性就是用来自定义我们弹出的菜单的样式,在之前的Actionbar的溢出菜单,我们是不能自定义他的样式的,只能根据你的theme来选择黑白两种,不能自己定义,现在我们可以定义弹出菜单的样式


CollapsingToolbarLayout  

                    作用是提供了一个可以折叠的Toolbar,它继承至FrameLayout,给它设置layout_scrollFlags,它可以控制包含在CollapsingToolbarLayout中的控件(如:ImageView、Toolbar)在响应layout_behavior事件时作出相应的scrollFlags滚动事件(移除屏幕或固定在屏幕顶端)。

1、app:contentScrim="#30469b"//设置当完全CollapsingToolbarLayout折叠(收缩)后的背景颜色。

2、app:expandedTitleMarginStart="48dp"//设置扩张时候(还没有收缩时)title向左填充的距离。

3、app:toolbarId 指定与之关联的ToolBar,如果未指定则默认使用第一个被发现的ToolBar子View

4、app:layout_collapseMode="parallax" 有两个可以先模式,设置为 parallax 模式时,在内容滚动时,CollapsingToolbarLayout中的View(比如ImageView)也可以同时滚动,实现视差滚动效果,通常和layout_collapseParallaxMultiplier(设置视差因子)搭配使用。设置为 pin 模式时,当CollapsingToolbarLayout完全收缩后,Toolbar还可以保留在屏幕上

5、app:layout_collapseParallaxMultiplier="0.7" //设置视差的系数,介于0.0-1.0之间。。

6、app:collapsedTitleGravity 指定折叠状态的标题如何放置,可选值:topbottom

7、app:collapsedTitleTextAppearance="@style/TextAppearance.CollapsedTitle" 指定折叠状态标题文字的样式

8、app:expandedTitleTextAppearance="@style/TextAppearance.ExpandedTitle" 指定展开状态标题文字的样式

9、app:contentScrim="?attr/colorPrimaryDark"  指定CollapsingToolbarLayout完全被滚出到屏幕外时的ColorDrawable

10、app:expandedTitleGravity  展开状态的标题如何放置

11、app:titleEnabled 指定是否显示标题文本

上一篇下一篇

猜你喜欢

热点阅读