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

下面修改代码:

  1. InitialSlidingViewController.m
  1. #import "InitialSlidingViewController.h"
  2. #import "ToDoViewController.h"
  3. @interface InitialSlidingViewController ()
  4. @end
  5. @implementation InitialSlidingViewController
  6. - (void)viewDidLoad
  7. {
  8. [super viewDidLoad];
  9. self.topViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"ToDoView"];
  10. }
  11. @end

ToDoViewController.m:中修改如下:

  1. - (void)viewWillAppear:(BOOL)animated
  2. {
  3. [super viewWillAppear:animated];
  4. // Add a shadow to the top view so it looks like it is on top of the others
  5. self.view.layer.shadowOpacity = 0.75f;
  6. self.view.layer.shadowRadius = 10.0f;
  7. self.view.layer.shadowColor = [[UIColor blackColor] CGColor];
  8. // Tell it which view should be created under left
  9. if (![self.slidingViewController.underLeftViewController isKindOfClass:[MenuViewController class]]) {
  10. self.slidingViewController.underLeftViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MenuView"];
  11. }
  12. // Add the pan gesture to allow sliding
  13. [self.view addGestureRecognizer:self.slidingViewController.panGesture];
  14. }

MenuViewController修改如下:

  1. - (void)viewDidLoad
  2. {
  3. [super viewDidLoad];
  4. [self.slidingViewController setAnchorRightRevealAmount:240.0f];
  5. self.slidingViewController.underLeftWidthLayout = ECFullWidth;
  6. }

为了美观你可以设置一下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的更多相关文章

  1. 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 ...

  2. IOS学习之路十(仿人人滑动菜单Slide-out Sidebar Menu)

    最近滑动菜单比较流行,像facebook和人人等都在使用滑动菜单,今天做了一个小demo大体效果如下: 这次用了一个开源的项目ECSlidingViewController这个也是一个挺著名的托管在G ...

  3. 40 个超棒的免费 Bootstrap HTML5 网站模板

    Bootstrap 是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的版式,表单,buttons,表格,网格系统等等. 目前 ...

  4. Bootstrap Metronic 学习记录(二)菜单栏

    1.简介 1)  .环境配置 2)  .提取页面 2).动态生成菜单(无限级别树) 2.系统环境配置 项目需要程序数据支撑,这里选择MVC5.0+EF6.0[SQLSERVER](不对MVC架构和SQ ...

  5. 240个jquery插件(转)

    http://www.kollermedia.at/archive/2007/11/21/the-ultimate-jquery-plugin-list/File upload Ajax File U ...

  6. 很不错的jQuery学习资料和实例

    这些都是学习Jquery很不错的资料,整理了一下,分享给大家. 希望能对大家的学习有帮助. 帕兰 Noupe带来的51个最佳jQuery教程和实例, 向大家介绍了jQuery的一些基本概念和使用的相关 ...

  7. 强烈推荐240多个jQuery插件提供下载

    jQuery 是继 prototype 之后又一个优秀的 Javascript 框架.其宗旨是—写更少的代码,做更多的事情.它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不及 的 ...

  8. 240多个jQuery插件

    概述 jQuery 是继 prototype 之后又一个优秀的 Javascript 框架.其宗旨是—写更少的代码,做更多的事情.它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不 ...

  9. 海量jQuery插件

    转自:http://blog.csdn.net/zzq58157383/article/details/6900142 提醒大家在使用的时候注意jQuery包的版本问题,最好是使用相同的版本,因为使用 ...

随机推荐

  1. 从头开始学JavaScript(一)——基础中的基础

    概要:javascript的组成. 各个组成部分的作用 . 一.javascript的组成   javascript   ECMAScript(核心) DOM(文档对象模型) BOM(浏览器对象模型) ...

  2. 私人定制javascript中数组小知识点(Only For Me)

    先上笑话,1.刚看到一个游泳的,想起公司组织去三亚旅游,老板跳海里,各种挣扎,捞上来老板第一句话:我记得我会游泳的啊. 2.媳妇说:老公对不起,我把你新买的自行车撞散架了! 老公:没事宝贝,你若安好, ...

  3. Cocos2d-android游戏引擎-介绍

    一.游戏引擎概念 什么是游戏引擎       游戏引擎是指一些已编写好的可编辑游戏系统或者一些交互式实时图像应用程序的核心组件.这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计 ...

  4. TypeScript入门

    博客园首发,转载请注明出处,多谢支持.http://www.cnblogs.com/xuema/ 一.TypeScript TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaSc ...

  5. 安装Codeception框架

    安装Codeception框架 打开终端,进入项目根目录: composer require "codeception/codeception:*" 安装完成,在vendor目录会 ...

  6. PLSQL-Developer数据库连接工具使用方法

    PLSQL-Developer数据库连接工具使用方法 该方法适用于本机未安装Oracle客户端的情况下如何让连接到数据库.经过本人亲自测试绝对可以连接.前提是您安装的版本没有问题,如您安装的版本有问题 ...

  7. html postMessage 创建聊天应用

    应用说明: 这个例子演示如何在门户页面以iframe方式嵌入第三方插件,示例中使用了一个来域名下的应用部件,门户页面通过postMessage来通信.iframe中的聊天部件通过父页面标题内容的闪烁来 ...

  8. [翻译]初识SQL Server 2005 Reporting Services Part 3

    原文:[翻译]初识SQL Server 2005 Reporting Services Part 3 这是关于SSRS文章中四部分的第三部分.Part 1提供了一个创建基本报表的递阶教程.Part 2 ...

  9. Android-往来:包Group添加到联系人

    long groupId = Constant.createGroupId; ContentValues values = new ContentValues(); for(int i=0,len=C ...

  10. JQuery each详细用法

    each()方法能使DOM循环结构简洁,不容易出错.each()函数封装了十分强大的遍历功能,使用也很方便,它可以遍历一维数组.多维数组.DOM, JSON 等等在javaScript开发过程中使用$ ...