博客
关于我
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'。

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

你可能感兴趣的文章
PyQt4参考文档
查看>>
PyTorch Lightning:通过分布式训练扩展深度学习工作流
查看>>
PyQt5 - QThread:在线程仍在运行时被销毁
查看>>
PyQt5 - 如何从工作线程发出信号以通过 GUI 线程调用事件
查看>>
PyQt5 Designer 不工作:此应用程序无法启动,因为无法初始化 Qt 平台插件
查看>>
PyQt5 QLCNumber 没有更新
查看>>
PyQt5 TabWidget选项卡BarClicked TypeError:本机Qt信号不可调用
查看>>
PyQt5 从 PyQt4 转换信号代码
查看>>
PyQt5 和 asyncio:从永不完成的收益
查看>>
PyQt5 和 Django:如何使用 HTTP 请求(Multipart-form)上传图像?
查看>>
PyQt5 按钮运行功能和更新 LCD
查看>>
pyqt5 获取Qlabel中的图片并对其进行处理(包括Qimage转换为Mat)
查看>>
pyqt5 设置控件在最上层或者在下层
查看>>
pyqt5 设置网格布局的间距
查看>>
pyTorch Hub 系列#4:PGAN — GAN 模型
查看>>
PyQt5-基本窗口控件-QMainWindow
查看>>
PyQt5:如何安装/运行 Qt 设计器
查看>>
PyQt5——pyqtgraph绘图大招
查看>>
PyQt5——多窗口之间数据处理
查看>>
PyQt5——多线程、信号与槽
查看>>