博客
关于我
Android滑动导航菜单的快速构建
阅读量:108 次
发布时间:2019-02-26

本文共 1042 字,大约阅读时间需要 3 分钟。

李济洲作为我们公众号的“老司机”,今天就由他来带大家学习如何快速构建导航菜单。他的博客内容分为上下两篇,我们这里整合成一篇,希望不要超载。

李济洲的博客地址是:http://blog.csdn.net/leejizhou

滑动导航菜单一直是移动App中流行的UI设计,随着Material Design的盛行,Android开发中这种设计越来越普遍。今天我们将总结如何利用Android API快速构建各种类型的滑动导航菜单效果。

第一种样式是QQ客户端V6版本的滑动菜单效果。实现这个UI效果需要利用V4包的SlidingPaneLayout控件,这是一个帮助开发者实现水平多层滑动的布局控件,继承自ViewGroup。SlidingPaneLayout的主要方法包括setParallaxDistance、setCoveredFadeColor、setSliderFadeColor、setPanelSlideListener、openPane和closePane等。

第二种样式是主视图不动,边缘划出菜单效果。这需要使用V4包的DrawerLayout布局容器。DrawerLayout和SlidingPaneLayout都利用了V4的ViewDragHelper来实现滑动效果。DrawerLayout的主要方法包括addDrawerListener、openDrawer、closeDrawer和isDrawerOpen等。

当下的设计标准

在Material Design之前,官方对滑动导航菜单的设计标准是将菜单布局放在ActionBar下方。然而,随着Android 5.0 Material Design的推出,官方对滑动导航菜单的设计标准有了重大调整。新的标准化设计要求滑动导航菜单一跃来至所有界面的顶端。

与DrawerLayout配合使用的NavigationView是实现标准设计的滑动导航菜单的最佳选择。NavigationView需要在XML布局中设置android:layout_gravity="start"或"end",并通过app:headerLayout属性传入导航菜单的头部布局。NavigationView在Design库中需要添加相应的依赖库:compile 'com.android.support:design:24.0.0'。

如果你有好的技术文章想和大家分享,欢迎向我的公众号投稿,投稿具体细节请在公众号主页点击“投稿”菜单查看。

你可能感兴趣的文章
Objective-C实现mobius function莫比乌斯函数算法(附完整源码)
查看>>
Objective-C实现modular Binary Exponentiation模二进制指数算法 (附完整源码)
查看>>
Objective-C实现modular exponential模指数算法(附完整源码)
查看>>
Objective-C实现monte carlo dice蒙特卡洛骰子模拟算法(附完整源码)
查看>>
Objective-C实现monte carlo蒙特卡罗算法(附完整源码)
查看>>
Objective-C实现Mosaic Augmentation马赛克增强算法(附完整源码)
查看>>
Objective-C实现msd 基数排序算法(附完整源码)
查看>>
Objective-C实现MSRCR算法(附完整源码)
查看>>
Objective-C实现multi level feedback queue多级反馈队列算法(附完整源码)
查看>>
Objective-C实现multilayer perceptron classifier多层感知器分类器算法(附完整源码)
查看>>
Objective-C实现multiplesThreeAndFive三或五倍数的算法 (附完整源码)
查看>>
Objective-C实现n body simulationn体模拟算法(附完整源码)
查看>>
Objective-C实现naive string search字符串搜索算法(附完整源码)
查看>>
Objective-C实现natural sort自然排序算法(附完整源码)
查看>>
Objective-C实现nested brackets嵌套括号算法(附完整源码)
查看>>
Objective-C实现nevilles method多项式插值算法(附完整源码)
查看>>
Objective-C实现newton raphson牛顿-拉夫森算法(附完整源码)
查看>>
Objective-C实现newtons second law of motion牛顿第二运动定律算法(附完整源码)
查看>>
Objective-C实现newton_forward_interpolation牛顿前插算法(附完整源码)
查看>>
Objective-C实现newton_raphson牛顿拉夫森算法(附完整源码)
查看>>