Android 新兴的UI模式——侧边导航栏【转】
侧边导航栏也就是大家熟知的SliddingMenu,英文也叫Fly-In App Menu、Side Navigation等。当然谷歌现在已经推出类似这个效果的组件--Navigation Drawer
- Side navigation
- Fly-in app menu
- Slide out navigation
- Sliding navigation bar
- Slide menu
- ...
这种效果始于Spotify,随后不久Evernote和谷歌+也开始使用。它现在已经被更多的应用采用,国外的如YouTube,Facebook,Dribbble上等等;国内人人,酷狗等等。在github网站上,已经有很多开源组件实现了这种效果:
- jfeinstein10/SlidingMenu
- Gregadeaux/android-fly-in-app-navigation
- bk138/LibSlideMenu
- darvds/RibbonMenu
- eddieringle/android-undergarment
- SimonVT/android-menudrawer
- johnkilSideNavigation
- ...
接下来再介绍另外一个开源组件:ActionBarSherlock。这个ActionBarSherlock也是大有来头的,可以去研究研究,绝对是不错的东西来的。在设计导航的时候,这个可以用得上,很不错的说。因为SlidingMenu、SideNavigation的使用都要依赖这个组件,很多朋友应该也知道。
对于SlidingMenu这个组件,我在很多论坛都看有人发帖子介绍过,所以大家一个不陌生了。以上提供这么多的组件,那哪一个是你需要的呢,我觉得应该去逐一下载运行看看效果,通过比较权衡最后再决定去使用哪个或者自己参考实现。推荐大家都看看,然后研究一下实现的原理,这对于提高开发水平有很大的帮助。
其实,我最关注的还是实现这个效果的思路和步骤。之前看过很多这方面的博客,看多很多朋友的实现,有的继承HorizontalScrollView,有的继承ViewGroup,总体来说还是继承ViewGroup比较正规一点,因为官方的Navigation Drawer就是这么做的。国外的工程师Cyril Mottier在他的网站里面,发表过三篇文章,讲的就是这个方面的内容,比较深刻:
- The making of Prixing #1: Fly-in app menu
- The making of Prixing #2: Swiping the fly-in app menu
- The making of Prixing #3: Polishing the sliding app menu
总结:这个组件已不是什么新鲜事了,通过开源组件可以很容易的集成到自己的应用里面,不过对于想学习的朋友还是一个不错的案例。
Android 新兴的UI模式——侧边导航栏【转】的更多相关文章
- [置顶]
bootstrap自定义样式-bootstrap侧边导航栏的实现
前言 bootstrap自带的响应式导航栏是向下滑动的,有时满足不了个性化的需求,需要做一个类似于android drawerLayout 侧滑的菜单,这就是我要实现的bootstrap自定义侧滑菜单 ...
- 【机器学习实践】Jupyter Notebook安装 侧边导航栏功能 操作及其他常用扩展功能介绍
安装过程: 1. 首先我们引入jupyter_contrib_nbextension这个第三方库. 2. 在Anaconda Promot中输入命令: pip install jupyter_con ...
- 【源码分享】jquery+css实现侧边导航栏
jquery+css实现侧边导航栏 最近做项目的时候,突然想用一个侧边导航栏,网上找了几个插件,有的太丑而且不太符合我的预期.与其修改别人的代码,不如自己来写一个了.废话不多说先上图,感兴趣的请继续看 ...
- html+css写出响应式侧边导航栏
html部分:先写用div画好六个导航的卡片,再利用css添加响应效果 <div class='card-holder'> <div class='card-wrapper'> ...
- Android 4.4 上实现透明导航栏和状态栏 Translucent system bar
Translucent system UI styling To get the most impact out of your content, you can now use new window ...
- Android学习笔记- Fragment实例 底部导航栏的实现
1.要实现的效果图以及工程目录结构: 先看看效果图吧: 接着看看我们的工程的目录结构: 2.实现流程: Step 1:写下底部选项的一些资源文件 我们从图上可以看到,我们底部的每一项点击的时候都有不同 ...
- 兼容 Android 4.4 透明状态栏与导航栏
http://www.apkbus.com/Android-163388-1-1.html?_dsign=73d41229 android 系统自4.2 开始 UI 上就没多大改变,4.4 也只是增加 ...
- Android之仿今日头条顶部导航栏效果
随着时间的推移现在的软件要求显示的内容越来越多,所以要在小的屏幕上能够更好的显示更多的内容,首先我们会想到底部菜单栏,但是有时候像今日头条新闻客户端要显示的内容太多,而且又想在主界面全部显示出来,所以 ...
- android 自定义组合控件 顶部导航栏
在软件开发过程中,经常见到,就是APP 的标题栏样式几乎都是一样的,只是文字不同而已,两边图标不同.为了减少重复代码,提高效率, 方便大家使用,我们把标题栏通过组合的方式定义成一个控件. 例下图: 点 ...
随机推荐
- @RISK
Price: AUD $3,295.00 Price: AUD $2,495.00 适用于项目管理的 @RISK 免费试用版下载 » 立即购买 » 价格对比 » 许可选项 (英文) » 教学计 ...
- Android使用VideoView播放网络视频
Android支持播放网络上的视频.在播放网络上的视频时,牵涉到视频流的传输,往往有两种协议,一种是HTTP,一种是RTSP.这 两种协议最大的不同是,HTTP协议,不支持实时流媒体的播放,而RTSP ...
- chrome 下的 proxy 插件安装
Install “Proxy SwitchyOmega” extensions for chrome.
- #include <vector>
双端队列deque比向量vector更有优势 vector是动态数组,在堆上 vector比array更常用 不需要变长,容量较小,用array 需要变长,容量较大,用vector 1 at() 取出 ...
- 轻轻谈一下seaJs——模块化开发的利器
"仅做一件事,做好一件事." 这个应该就是seaJs的精髓了. 我在自己的一些项目中使用过seaJs.对其算是了解一二.如今就班门弄斧.轻轻地谈一下. 首先上一段度娘的话: &qu ...
- HP DL360 G7通过iLO部署系统
HPDL360 G7通过iLO部署系统 HP DL360 G7是没有光驱的服务器,可使用USB外置光驱.PXE网络安装.ILO方式的安装操作系统 一.HP iLO 简介 iLO 是一组芯片,内部是vx ...
- 多个Activity之间的切换与数据交互
总结 两个activity之间切换我概括的分为两步: 1. 代码实现切换操作.2.配置中声明另外一个acitivity! 1. 代码实现切换操作 显示定义一个intent 对象,Intent 这个类的 ...
- iOS点滴- ViewController详解
一.生命周期 当一个视图控制器被创建,并在屏幕上显示的时候. 代码的执行顺序 1. alloc 创建对象,分配空间 2.init (initW ...
- English - 英语中的时间表达法,这里全啦!
- ASP.Net中使用Report Service
昨天研究以下Report Service,发现SQL Service自带的报表服务器也非常强大, 一,报表在不同的应用中表现形式 参考:http://www.cnitblog.com/yide/arc ...