热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

拥抱AndroidDesignSupportLibrary新变化(导航视图、悬浮ActionBar)

转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰

转载 请注明 明桑Android

Android 5.0 Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎,可它的普及似乎不那么顺利,刚过去不久的Google I/O 2015都已经推出了新的Android M预览版。即使是这样,原生版本的Android推广似乎一直没取得google预期的结果…不管怎样,作为开发者我们关心的无非是这个平台是否好用,能否开发出精致而又有趣的应用。好在Material Design我认为是成功的,官方在Android Support Library 22.2.0中增加了Design Support Library用来在低版本中支持Material Design。

文章主要分为以下几个部分:

1.下载并添加Design Support Library

2.介绍Deign Support Library引入的新控件,新视图

预想文章能写的详细些,所以就分成几篇来写,这篇就作为引子,认识新的设计风格下的控件视图等基本要素,在后面的文章中逐一介绍各个控件的具体使用。


1,下载Android Support Library

先说点题外话:说实话学android最头疼的就是上不了官网,很多初学者刚开始连新版本的sdk,Android Studio都得绕一大圈子,学到后面想了解点新的资讯或者技术都无法在第一时间获取…至于墙,不是我们讨论的重点,我想说的是如果你有能力为自己搭把梯子就搭了,如果需要掏钱,目前有很多便宜又划算的VPN(10-20¥/月),希望你能为自己投点资,比起充QQ钻应该值得多。墙外的生活也少不了”光怪陆离”,希望你能有份程序员的矜持,为什么这么说,你看看墙外哪些所谓的“意识形态”是如何谈论中国政治的就明白墙存在的意义了!?-

咳咳,说这么多,无非是希望能上得了官网,平时遇到问题多看看官方文档,开发者博客,墙外很多技术博客很值得一读,这些对自身的进步帮助很大。

下载/更新Android Support Library

这些都是老套路基本功了,就以Android Studio为例,我们需要通过SDK Manager下载/更新 Support Library

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)0

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)1

将Support Library添加进编译路径

既然下载好了support library,想要使用它还需要将它们引入编译环境;

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)2

compile 'com.android.support:design:22.2.0'

2,Design Support Library带来了哪些新变化

用一句话总结就是:Design Support Library除了带来兼容版本的Material Design,还将流行的第三方开源库进行了官方封装。

1.Navigation View

导航视图,通过使用menu,headerLayout等属性进一步简化了抽屉式导航框架的使用:

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)3

2.Floating labels for edit text

还记得为EditText设置的hint嘛,通过hint显示的提示信息当用户有输入的时候它就消失了,很不利于交互,现在让它悬浮在上方。

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)4

3.Floating ActionBar

悬浮的actionBar,这个设计很赞,可以很好的将交互频繁的动作置于这个小小的悬浮的圆形button上,当然具体的样式和响应动作你都可以自己实现。

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)5

4.Snackbar

可以认为它是Toast的升级版,长的比Toast好看,而且支持用户自己手动擦除这条通知,

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)6

5.Tabs

选项卡,提供了TabLayout,里面支持很多自定义属性,简化了以前需要实现类似效果的操作。

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)7

6.CoordinatorLayout

提供了对子视图的管理(父子视图之间关系)以及对触摸事件反馈等。

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)8

7.Collapsing Toolbars

可自由定制的工具bar,提供自定义位置、属性、响应等

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)9

8.App bar

最顶层的导航bar,包含Titile,Nav icon,action bar等等

拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)10


总结:

作为引子,只是简单介绍了Design Support Library带来了哪些新的变化,后面会逐个讲解具体视图控件的使用,关于Material Design的部分d大家可以参考官网 Material Design。

参考资料:Android Design Support Library (需要翻墙)


  • 微博: @明桑Android黑历史
  • 邮箱&#xff1a; <13141459344&#64;163.com>
  • 个人主页&#xff1a; 明桑战胜Android汪的黑历史
  • 微信公众号&#xff1a; ITBird


推荐阅读
  • 本文详细探讨了JavaScript中的作用域链和闭包机制,解释了它们的工作原理及其在实际编程中的应用。通过具体的代码示例,帮助读者更好地理解和掌握这些概念。 ... [详细]
  • 本文探讨了使用C#在SQL Server和Access数据库中批量插入多条数据的性能差异。通过具体代码示例,详细分析了两种数据库的执行效率,并提供了优化建议。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 反向投影技术主要用于在大型输入图像中定位特定的小型模板图像。通过直方图对比,它能够识别出最匹配的区域或点,从而确定模板图像在输入图像中的位置。 ... [详细]
  • 本问题探讨了在特定条件下排列儿童队伍的方法数量。题目要求计算满足条件的队伍排列总数,并使用递推算法和大数处理技术来解决这一问题。 ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 本文介绍如何使用 Android 的 Canvas 和 View 组件创建一个简单的绘图板应用程序,支持触摸绘画和保存图片功能。 ... [详细]
  • Python 内存管理机制详解
    本文深入探讨了Python的内存管理机制,涵盖了垃圾回收、引用计数和内存池机制。通过具体示例和专业解释,帮助读者理解Python如何高效地管理和释放内存资源。 ... [详细]
  • 本题探讨了在一个有向图中,如何根据特定规则将城市划分为若干个区域,使得每个区域内的城市之间能够相互到达,并且划分的区域数量最少。题目提供了时间限制和内存限制,要求在给定的城市和道路信息下,计算出最少需要划分的区域数量。 ... [详细]
  • 深入理解路由器控制平面与转发平面及路由表
    本文详细介绍了路由器的控制平面和转发平面,并解释了路由表及其核心表项的重要性,帮助读者全面掌握路由器的工作原理。 ... [详细]
  • 本文详细介绍了Python中函数的基本概念,包括函数的定义与调用、文档注释、参数传递(形参与实参)、返回值以及函数嵌套。通过具体示例和解释,帮助读者掌握函数在编程中的应用。 ... [详细]
  • 本文深入探讨了传输层的另一个重要协议——用户数据报协议(UDP)。在了解了TCP协议的基础上,我们将详细解析UDP的工作原理、应用场景及其优缺点,帮助读者全面理解为什么需要UDP。 ... [详细]
  • 给定行数 numRows,生成帕斯卡三角形的前 numRows 行。例如,当 numRows 为 5 时,返回的结果应为:[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]。 ... [详细]
  • 本文介绍如何在华为CE交换机上配置M-LAG(多链路聚合组),以实现CE1和CE2设备作为VLAN 10网关的高可用性。通过详细的配置步骤,确保网络冗余和稳定性。 ... [详细]
  • 在网站制作中随时可用的10个 HTML5 代码片段
    HTML很容易写,但创建网页时,您经常需要重复做同样的任务,如创建表单。在这篇文章中,我收集了10个超有用的HTML代码片段,有HTML5启动模板、空白图片、打电话和发短信、自动完 ... [详细]
author-avatar
398851412_eedcee
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有