Slide-out Sidebar Menu
IOS学习之路十(仿人人滑动菜单Slide-out Sidebar Menu)
2013-09-03 22:13 by lixingle, 270 阅读, 0 评论, 收藏, 编辑
最近滑动菜单比较流行,像facebook和人人等都在使用滑动菜单,今天做了一个小demo大体效果如下:
这次用了一个开源的项目ECSlidingViewController这个也是一个挺著名的托管在Github上的开源项目:
Github上Project的URL是:https://github.com/edgecase/ECSlidingViewController
大体步骤如下:
创建一个SingleView applicaton:


下面把下载的源码包含进来:
解压缩后打开 找到 ECSlidingViewController/Vendor/ECSlidingViewController 下的两个文件,我们把整个Vendor文件夹都导入:


添加一个类库:



打开StoryBoard另外再创建两个UIViewController
创建后大概界面如下:
1.新建两个文件分别为:ToDoViewController和MenuViewController都继承于UIviewController:
2.把新建时自带的ViewController两个文件删除,新建一个文件为:InitialSlidingViewController,打开stroryBoard并把它设为RootViewController。
3.在stroryBoard中把刚才新建的两个ToDoViewController和MenuViewController进行设置:
先设置ToDoViewController:把controller类设为:ToDoViewController标示符设为:ToDoView
MenuViewController的设置如上:把controller类设为:MenuViewController标示符设为:MenuView
下面修改代码:
- InitialSlidingViewController.m
- #import "InitialSlidingViewController.h"
- #import "ToDoViewController.h"
- @interface InitialSlidingViewController ()
- @end
- @implementation InitialSlidingViewController
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- self.topViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"ToDoView"];
- }
- @end
ToDoViewController.m:中修改如下:
- - (void)viewWillAppear:(BOOL)animated
- {
- [super viewWillAppear:animated];
- // Add a shadow to the top view so it looks like it is on top of the others
- self.view.layer.shadowOpacity = 0.75f;
- self.view.layer.shadowRadius = 10.0f;
- self.view.layer.shadowColor = [[UIColor blackColor] CGColor];
- // Tell it which view should be created under left
- if (![self.slidingViewController.underLeftViewController isKindOfClass:[MenuViewController class]]) {
- self.slidingViewController.underLeftViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MenuView"];
- }
- // Add the pan gesture to allow sliding
- [self.view addGestureRecognizer:self.slidingViewController.panGesture];
- }
MenuViewController修改如下:
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- [self.slidingViewController setAnchorRightRevealAmount:240.0f];
- self.slidingViewController.underLeftWidthLayout = ECFullWidth;
- }
为了美观你可以设置一下ToDoViewController和MenuViewController的背景色:
运行一下效果大体如下:

接下来你可以自己添加个性的View和segue了
转载请注明:
原文转载自:http://blog.csdn.net/wildcatlele
新浪微博:http://weibo.com/u/3202802157
原文参考:http://kingscocoa.com/tutorials/slide-out-navigation/
Slide-out Sidebar Menu的更多相关文章
- iphone Dev 开发实例10:How To Add a Slide-out Sidebar Menu in Your Apps
Creating the Xcode Project With a basic idea about what we’ll build, let’s move on. You can create t ...
- IOS学习之路十(仿人人滑动菜单Slide-out Sidebar Menu)
最近滑动菜单比较流行,像facebook和人人等都在使用滑动菜单,今天做了一个小demo大体效果如下: 这次用了一个开源的项目ECSlidingViewController这个也是一个挺著名的托管在G ...
- 40 个超棒的免费 Bootstrap HTML5 网站模板
Bootstrap 是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的版式,表单,buttons,表格,网格系统等等. 目前 ...
- Bootstrap Metronic 学习记录(二)菜单栏
1.简介 1) .环境配置 2) .提取页面 2).动态生成菜单(无限级别树) 2.系统环境配置 项目需要程序数据支撑,这里选择MVC5.0+EF6.0[SQLSERVER](不对MVC架构和SQ ...
- 240个jquery插件(转)
http://www.kollermedia.at/archive/2007/11/21/the-ultimate-jquery-plugin-list/File upload Ajax File U ...
- 很不错的jQuery学习资料和实例
这些都是学习Jquery很不错的资料,整理了一下,分享给大家. 希望能对大家的学习有帮助. 帕兰 Noupe带来的51个最佳jQuery教程和实例, 向大家介绍了jQuery的一些基本概念和使用的相关 ...
- 强烈推荐240多个jQuery插件提供下载
jQuery 是继 prototype 之后又一个优秀的 Javascript 框架.其宗旨是—写更少的代码,做更多的事情.它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不及 的 ...
- 240多个jQuery插件
概述 jQuery 是继 prototype 之后又一个优秀的 Javascript 框架.其宗旨是—写更少的代码,做更多的事情.它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不 ...
- 海量jQuery插件
转自:http://blog.csdn.net/zzq58157383/article/details/6900142 提醒大家在使用的时候注意jQuery包的版本问题,最好是使用相同的版本,因为使用 ...
随机推荐
- utf8 和 UTF-8 在使用中的差别
在使用中经常遇到utf-8和utf8,如今最终弄明确他们的使用不同之处了,如今来和大家分享一下,以下我们看一下utf8 和 UTF-8 有什么差别 "UTF-8"是标准写法,ph ...
- 记录近期小改K-Means至MapReduce上的心得
背景: 在所有聚类算法中KMeans算是表面上最简单的一种,没有过多恼人的古希腊符号公式,没有过分繁杂的公式嵌套.对于一个初学矩阵或者仅有向量概念的非专业人士的来说,不可不畏是一把踹门利器.这个世界上 ...
- cform 开发框架介绍
CForm是从2012年开始研发的一套灵活,易用,简单,成熟的中小型应用系统开发框架.目前已成功应用在浙江大学.温州科技职业学院.广西农业局.青岛市农业局.乐清妇保院.老博会.婚尚起义结婚网等单位. ...
- Codeforces 527C Glass Carving(Set)
意甲冠军 片w*h玻璃 其n斯普利特倍 各事业部为垂直或水平 每个分割窗格区域的最大输出 用两个set存储每次分割的位置 就能够比較方便的把每次分割产生和消失的长宽存下来 每次分割后剩下 ...
- ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)
原文:ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!) ORACLE PL/SQL编程之六: 把过程与函数说透(穷追猛打,把根儿都拔起!) 继上篇:ORACLE P ...
- LINUX下getsockopt和setsockopt函数
这两个函数仅用于套接字. 函数原型: #include <sys/socket.h> #include <sys/types.h> int getsockopt(int soc ...
- leetcode第三题--Longest Substring Without Repeating Characters
Problem:Given a string, find the length of the longest substring without repeating characters. For e ...
- shell脚本中执行另一个shell脚本
分类: 可以在一个shell脚本中执行另一个shell脚本(或非可执行文件,主要用于取得一些变量的值),方法是: . 文件名(包括路径) 或 变量=文件名(包括路径) . $变量 注意,圆点后面有 ...
- android 布局属性大全---初学者必备
Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料,花费本人一个下午搞出来的,希望对其他人有用. 第一类:属性值为true或false android: ...
- Android开发Tips-1
打算记录一些自己在开发过程中遇到的一些技巧性代码,方便以后遇到相似功能时能够快速的找到,那就从这里开始吧. 1,如何截取当前屏幕(不包括当前Activity的Title)并分享: a,获取当前Acti ...