zoukankan      html  css  js  c++  java
  • Android

    http://www.jianshu.com/p/c8cbeb7ea43a

    用Navigation Drawer 和 Navigation View 来实现左右侧滑

    Activity里甚至什么都不用写

    NavigationDrawer 简介

    NavigationDrawer 是 Google 在 Material Design 中推出的一种侧滑导航栏设计风格。说起来可能很抽象,我们直接来看看 网易云音乐 的侧滑导航栏效果

    Google 为了支持这样的导航效果,推出一个新控件 —— DrawerLayout 。而在 DrawerLayout 没诞生之前,需求中需要实现侧滑导航效果时,我们必然会选择去选择一些成熟的第三方开源库(如最有名的 SlidingMenu)来完成开发 。

    在对比过 DrawerLayoutSlidingMenu 的实现效果后,基于以下的几点,我认为完全可以在开发中使用 DrawerLayout 取代以前的 SlidingMenu

    1. 从动画效果上看,你会发现两者仅仅是在移动的效果上有些差别外,其他地方并没有太大的差异
    2. 在交互效果上,我认为这两者都差不多的,就算你把 网易云音乐 的效果套到了 手Q 上,也不会影响到用户的交互
    3. DrawerLayout 用起来比 SlidingMenu 更简单,代码量更少(往下看就知道了)
    4. DrawerLayout 是向下兼容的,所以不会存在低版本兼容性问题
    5. Google 亲儿子,没理由不支持啊!!!!!!

    到这里,要是你还没有引入 DrawerLayout 开发的冲动,请继续听我为你好好安利一番。

    一般情况下,在 DrawerLayout 布局下只会存在两个子布局,一个 内容布局 和 一个 侧滑菜单布局,这两个布局关键在于 android:layout_gravity 属性的设置。如果你想把其中一个子布局设置成为左侧滑菜单,只需要设置 android:layout_gravity="start" 即可(也可以是 left,右侧滑则为 end 或 right ),而没有设置的布局则自然成为 内容布局


    再识 NavigationView

    在 Google 推出 NavigationDrawer 设计中,NavigationViewDrawerLayout 是官方推荐的最佳组合。在使用 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关闭时调用

    onDrawerSlide DrawerLayout滑动时调用

  • 相关阅读:
    URL中增加BASE64加密的字符串引起的问题(java.net.MalformedURLException:Illegal character in URL)
    读《暗时间》总结
    假设写一个android桌面滑动切换屏幕的控件(一)
    JDBC Connection Reset问题分析
    深度学习工具caffe具体安装指南
    TS2
    TS 函数解析
    typescript
    响应式网页设计:rem、em设置网页字体大小自适应
    一看就懂得移动端rem布局、rem如何换算
  • 原文地址:https://www.cnblogs.com/qlky/p/7208988.html
Copyright © 2011-2022 走看看