【Android -- Material Design】CollapsingToolbarLayout 的基本使用
前言
本篇将介绍 CollapsingToolbarLayout 的一些功能和属性,使用其实现可折叠的 toolbar 效果。
效果图
代码实现
CollapsingToolbarLayout
是对Toolbar的包装并且实现了折叠app bar效果,使用时,要作为 AppbarLayout 的直接子View。CollapsingToolbarLayout
有以下特性:
1. Collapsing title(折叠标题)
当布局全部可见的时候,title 是最大的,当布局开始滑出屏幕,title 将变得越来越小,你可以通过setTitle(CharSequence) 来设置要显示的标题。
注意:Toolbar 和 CollapsingToolbarLayout
同时设置了title时,不会显示Toolbartitle而是显示CollapsingToolbarLayout
的 title,如果要显示Toolbar 的 title,你可一在代码中添加如下代码:
collapsingToolbarLayout.setTitle("");
2. Content scrim(内容纱布)
当 CollapsingToolbarLayout
滑动到一个确定的阀值时将显示或者隐藏内容纱布,可以通过 setContentScrim(Drawable)
来设置纱布的图片。
提示:纱布可以是图片也可以是颜色色值,如果要显示颜色,在xml 布局文件中用contentScrim属性添加,代码如下:
app:contentScrim="@color/colorPrimary"
3. Status bar scrim(状态栏纱布)
当 CollapsingToolbarLayout
滑动到一个确定的阀值时,状态栏显示或隐藏纱布,你可以通过 setStatusBarScrim(Drawable)
来设置纱布图片。
提示:同内容纱布一样,状态栏纱布可以是图片也可以是一个颜色值,如果要显示颜色值,在xml 中用statusBarScrim 属性指定。
4. Parallax scrolling children(有视差地滚动子View)
让 CollapsingToolbarLayout
的子 View 可以有视差的滚动,需要在 xml 中用 添加如下代码:
app:layout_collapseMode="parallax"
5. Pinned position children(固定子View的位置)
子 View 可以固定在全局空间内,这对于实现了折叠并且允许通过滚动布局来固定 Toolbar 这种情况非常有用。在 xml 中将 collapseMode 设为 pin,代码如下:
app:layout_collapseMode="pin"
【Android -- Material Design】CollapsingToolbarLayout 的基本使用相关推荐
- Android Material Design简单使用 http://www.cnblogs.com/android-blogs/p/5632103.html
Android Material Design简单使用 吐槽 作为一个 Android developer,没有什么比拿着 UI 设计的一堆 iOS 风格的设计 来做需求更恶心的了,基本所有空间都要照 ...
- 视频教程-Android Material Design 新控件-Android
Android Material Design 新控件 刘志远,北京邮电大学硕士研究生, 北京育华志远科技有限公司创始人, 育华志远教育品牌负责人,育华志远课程体系打造者. 率领团队为互联网行业培训千 ...
- Android Material Design按钮样式
本文翻译自:Android Material Design Button Styles I'm confused on button styles for material design. 我对材质设 ...
- Android Material Design :LinearLayoutCompat添加分割线divider
Android Material Design :LinearLayoutCompat添加分割线divider Android Material Design 扩展支持包中的LinearLayo ...
- Android Material Design TabLayout属性app:tabMode和app: tabGravity
Android Material Design TabLayout属性app:tabMode和app: tabGravity Android Material Design 中的TabLayout有两 ...
- android夜间模式揭露动画,Android Material Design系列之夜间模式
今天我们讲讲夜间模式的实现,这篇文章的名字应该叫:<Android Material Design系列之夜间模式>.在Android 5.0 之后,实现夜间模式并非很难了,支持的5.0库提 ...
- Android Material Design按钮样式设计
Today we'll dive deep into Android Buttons in Material Design and develop an application that showca ...
- Android Material Design 系列之 BottomNavigationView + ViewPager + Fragment + BadgeView 开发详解
前言 BottomNavigationView 是 Material Design 提供的一个标准底部导航栏的实现,可以轻松的实现导航栏菜单之间的切换与浏览.底部导航使用户更方便的查看和切换最高层级的 ...
- 解决Error inflating class com.google.android.material.appbar.CollapsingToolbarLayout
该错误通常由以下原因之一引起: 缺少依赖库:如果使用的是 com.google.android.material 库中的视图,则必须在项目的 build.gradle 文件中添加该库的依赖,否则无法正 ...
- Android Material Design Icon Genenerator 插件为个人开发者提供 Icon 图标大全
前言 如果你作为个人开发者,没有美工小姐姐的情况下,项目中的图标 icon 很是苦恼.之前用过阿里巴巴图标库 Iconfont,后来发现 Android studio 中有一个很牛逼的 icon 插件 ...
最新文章
- 自旋电子学与量子计算机,基于“分子自旋电子学”的新技术,将给量子计算机带来新希望!...
- Nature:超越地域和文化,AI识别出全人类共同的16种面部表情
- Spring MVC 原理探秘 - 容器的创建过程
- 前端学习(875):dom事件流理论
- 构建电商网站业务安全系统,防止“薅羊毛”
- 【C#桌面应用】第一节:使用C#开发桌面应用的准备
- 如何系统地自学python100天_如何系统地自学 Python?
- 使用计算机系统管理商品存货,ERP管理系统中编码的意义
- php5.3启动,关于php5.3.8启动问题
- 基于Cocos2d-x开发guardCarrot--2 《保卫萝卜2》主页面开发
- 如何使用Aimersoft Video Suite Mac将 DVD 刻录到 ISO/DVD 文件夹
- 别总抱怨自己怀才不遇,告诉你将才与帅才的12个差别!
- Android自定义ProgressBar样式:渐变圆角水平进度条
- 拓端tecdat|matlab如何滤除低频尖峰脉冲
- BerkeleyDB
- aqara (737) -(a俩)_绿米与万科合作?Aqara线下服务商500家,合作有保障
- html做坦克大战的效果,HTML5实现坦克大战(一)
- oracle电子商务套件使用手册,甲骨文电子商务套件操作.pdf
- 事件驱动框架(二)——状态机
- 亚琛 计算机工程科学,德国留学,亚琛工大有哪些专业可以申请
热门文章
- 关于无线wifi漫游设置
- 您的计算机无法启动磁盘损坏,解决办法:如何修复SATA硬盘损坏并无法启动?...
- 大疆2019校招提前批机器学习算法工程师在线笔试题目回忆版
- RT-Thread学习笔记——信号量
- 微信拼车小程序无服务器,滴滴顺风车下架 拼车微信小程序笑了
- neutron-server.service启动失败显示代理报错http://controller:9696/v2.0/agents.json
- 修改ua html5,html5中bootstrap表单样式文件html,兼容多种UA终端
- 发明计算机的人的名人名言,16句关于科学家的名言
- RSA用私钥加密数据公钥解密数据(不是签名验证过程)
- 域渗透非约束委派Spooler