世事洞明皆学问,人情练达即文章。这篇文章主要讲述Android - Navigation Drawer相关的知识,希望能为你提供帮助。
http://www.jianshu.com/p/c8cbeb7ea43a
用Navigation Drawer 和 Navigation View 来实现左右侧滑
Activity里甚至什么都不用写
NavigationDrawer 简介NavigationDrawer
是 Google 在 Material Design 中推出的一种侧滑导航栏设计风格。说起来可能很抽象,我们直接来看看
网易云音乐
的侧滑导航栏效果
Google 为了支持这样的导航效果,推出一个新控件 ——
DrawerLayout
。而在
DrawerLayout
没诞生之前,需求中需要实现侧滑导航效果时,我们必然会选择去选择一些成熟的第三方开源库(如最有名的
SlidingMenu)来完成开发 。
在对比过 DrawerLayout 和 SlidingMenu 的实现效果后,基于以下的几点,我认为完全可以在开发中使用 DrawerLayout 取代以前的 SlidingMenu:
- 从动画效果上看,你会发现两者仅仅是在移动的效果上有些差别外,其他地方并没有太大的差异
- 在交互效果上,我认为这两者都差不多的,就算你把 网易云音乐 的效果套到了 手Q 上,也不会影响到用户的交互
- DrawerLayout 用起来比 SlidingMenu 更简单,代码量更少(往下看就知道了)
- DrawerLayout 是向下兼容的,所以不会存在低版本兼容性问题
- Google 亲儿子,没理由不支持啊!!!!!!
一般情况下,在 DrawerLayout 布局下只会存在两个子布局,一个 内容布局 和 一个 侧滑菜单布局,这两个布局关键在于 android:layout_gravity 属性的设置。如果你想把其中一个子布局设置成为左侧滑菜单,只需要设置 android:layout_gravity="start" 即可(也可以是 left,右侧滑则为 end 或 right ),而没有设置的布局则自然成为 内容布局 。
再识 NavigationView在 Google 推出 NavigationDrawer 设计中,NavigationView 和 DrawerLayout 是官方推荐的最佳组合。在使用 NavigationView 前,因为它是在 Material Design 的兼容包中,所以需要先在 build.gradle 中引入
compile ‘com.android.support:design:23.1.1‘
ActionBarDrawerToggle实现返回图片和动画效果
http://blog.csdn.net/chencehnggq/article/details/21492417
http://blog.csdn.net/zxm317122667/article/details/50989346
ActionBarDrawerToggle就是DrawerLayout事件的监听器
ActionBarDrawerToggle有3个方法可以被复写,分别用来实现DrawerLayout打开,关闭,滑动的事件监听:
onDrawerOpened DrawerLayout滑出时调用
onDrawerClosed DrawerLayout关闭时调用
【Android - Navigation Drawer】onDrawerSlide DrawerLayout滑动时调用
推荐阅读
- Android Eclipse 导入 AS Gradle AAR 库手冊
- 手机app测试要点(复制文)
- 知道超5类双绞线原理与实际设置
- 安普万兆XG光纤处理方案
- 全光接入——蓄势待发
- 6类线缆: 一字隔离更适用
- 正确选择屏蔽电缆与非屏蔽电缆
- TCL网络设备自动选择大厦行业应用处理方案
- 电力电缆的热伸缩及其对策探讨