代码库> 菜单> REFrostedViewController——iOS7风格,模糊效果的弹出式侧边菜单
REFrostedViewController——iOS7风格,模糊效果的弹出式侧边菜单
关注
上传者:ccsupport 分类:菜单(Menu)
查看次数:13652 下载次数:1482
上传时间:2013-10-22 大小:4 KB
效果见下图:


要求
Xcode 5及以上
Apple LLVM编译器
iOS 6.0及以上
ARC

Demo
在Xcode中创建然后运行REFrostedViewControllerExample工程,来看看REFrostedViewController是怎么工作的。

安装
使用CocoaPods
pod 'REFrostedViewController', '~> 2.1.2'

手动安装
拖拽REFrostedViewController文件到工程只能给,然后在你想要使用的类的头部添加#include "REFrostedViewController.h"。

示例用法
在AppDelegate的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOption中创建view controller,然后指派内容以及目录view controllers。

// Create content and menu controllers
//
DEMONavigationController *navigationController = [[DEMONavigationController alloc] initWithRootViewController:[[DEMOHomeViewController alloc] init]];
DEMOMenuViewController *menuController = [[DEMOMenuViewController alloc] initWithStyle:UITableViewStylePlain];


// Create frosted view controller
//
REFrostedViewController *frostedViewController = [[REFrostedViewController alloc] initWithContentViewController:navigationController menuViewController:menuController];
frostedViewController.direction = REFrostedViewControllerDirectionLeft;


// Make it a root controller
//
self.window.rootViewController = frostedViewController;




可以手动点击弹出侧边菜单:




[self.frostedViewController presentMenuViewController];



或者使用一个滑动手势识别器,通过滑动弹出侧边菜单:


- (void)panGestureRecognized:(UIPanGestureRecognizer *)sender
{
    [self.frostedViewController panGestureRecognized:sender];
}



Storyboards例子
1.创建REFrostedViewController例子。在这个例子中我们把它命名为:DEMORootViewController。
2.在Storyboard中指派根view的拥有者为DEMORootViewController。
3.确保在DEMORootViewController.h文件中#import "REFrostedViewController.h"。
4.给Storyboard中增加更多的view controllers,然后给它们增加标示符区分是“menuViewController”还是“contentViewController”。请注意在新的Xcode中标识符被称作“StoryboardID”,你可以在Identify inspector中找到它。
5.给DEMORootViewController.m文件增加一个awakeFromNib方法,见以下代码:

- (void)awakeFromNib
{
    self.contentViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"contentController"];
    self.menuViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"menuController"];
}


定制
你可以定制REFrostedViewController的以下属性:

@property (assign, readwrite, nonatomic) REFrostedViewControllerDirection direction;
@property (strong, readwrite, nonatomic) UIColor *blurTintColor;
@property (assign, readwrite, nonatomic) CGFloat blurRadius; // Used only when live blur is off
@property (assign, readwrite, nonatomic) CGFloat blurSaturationDeltaFactor; // Used only when live blur is off
@property (assign, readwrite, nonatomic) NSTimeInterval animationDuration;
@property (assign, readwrite, nonatomic) BOOL limitMenuViewSize;
@property (assign, readwrite, nonatomic) CGSize minimumMenuViewSize;
@property (assign, readwrite, nonatomic) BOOL liveBlur;
@property (assign, readwrite, nonatomic) REFrostedViewControllerLiveBackgroundStyle liveBlurBackgroundStyle;



设计风格作者Jackie Tran:http://dribbble.com/shots/1173945-Menu-Concept-1

作者:https://github.com/romaonthego

下载附件:  

收藏
我来说两句
发表评论
您还没有登录!请登录注册
所有评论(0


本周热门下载
综合评论
  • 下载地址:https://github.com/wangruofeng/RFSegmentView
  • 下载来先帮你修bug,自己锁屏解锁看下,,已经修复好了
    王爸爸 评论了 XYUISlider
  • 没有编辑选项??
    不要再下载这个代码了,github我重构了下,原来业务臃肿垃圾的东西都剔了
  • https://github.com/tianya2416/GKiOSNovel
    tianya2416 评论了 Novel
  • 您好,想实现每类都可以多选该怎么修改呢?
    愤愤忠 评论了 iOS 商品规格选择
  • 去哪里star
    18665920701 评论了 Novel
提示
sina weixin mail 回到顶部