├── SlideZoomMenuDemo
├── Images.xcassets
│ ├── mm1.imageset
│ │ ├── mm1.png
│ │ └── Contents.json
│ ├── mm2.imageset
│ │ ├── mm2.png
│ │ └── Contents.json
│ ├── mm3.imageset
│ │ ├── mm3.png
│ │ └── Contents.json
│ ├── mm4.imageset
│ │ ├── mm4.png
│ │ └── Contents.json
│ ├── mm5.imageset
│ │ ├── mm5.png
│ │ └── Contents.json
│ ├── mm6.imageset
│ │ ├── mm6.png
│ │ └── Contents.json
│ ├── pic.imageset
│ │ ├── lmm.png
│ │ └── Contents.json
│ ├── bg_mm.imageset
│ │ ├── bg.png
│ │ └── Contents.json
│ ├── arrow.imageset
│ │ ├── arrow_normal@2x.png
│ │ └── Contents.json
│ └── AppIcon.appiconset
│ │ └── Contents.json
├── ViewControllers
│ ├── LeftCell.h
│ ├── HomeViewController.h
│ ├── NextViewController.h
│ ├── MainViewController.h
│ ├── LeftCell.m
│ ├── MainCell.h
│ ├── LeftViewController.h
│ ├── MainCell.m
│ ├── HomeViewController.m
│ ├── NextViewController.m
│ ├── HomeViewController.xib
│ ├── NextViewController.xib
│ ├── LeftCell.xib
│ ├── MainViewController.xib
│ ├── LeftViewController.m
│ ├── MainViewController.m
│ ├── MainCell.xib
│ └── LeftViewController.xib
├── ViewController.h
├── main.m
├── AppDelegate.h
├── ViewController.m
├── SlideZoomMenu
│ ├── SLideZoomMenuController.h
│ ├── SLideZoomMenuController.xib
│ └── SLideZoomMenuController.m
├── Info.plist
├── Base.lproj
│ ├── Main.storyboard
│ └── LaunchScreen.xib
└── AppDelegate.m
├── SlideZoomMenuDemo.xcodeproj
├── xcuserdata
│ ├── jianren.xcuserdatad
│ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ │ ├── xcschememanagement.plist
│ │ │ └── SlideZoomMenuDemo.xcscheme
│ └── renxiaojian.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── xcschememanagement.plist
│ │ └── SlideZoomMenuDemo.xcscheme
├── project.xcworkspace
│ ├── contents.xcworkspacedata
│ ├── xcuserdata
│ │ ├── jianren.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ │ └── renxiaojian.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcshareddata
│ │ └── SlideZoomMenuDemo.xccheckout
└── project.pbxproj
└── SlideZoomMenuDemoTests
├── Info.plist
└── SlideZoomMenuDemoTests.m
/SlideZoomMenuDemo/Images.xcassets/mm1.imageset/mm1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/mm1.imageset/mm1.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm2.imageset/mm2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/mm2.imageset/mm2.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm3.imageset/mm3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/mm3.imageset/mm3.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm4.imageset/mm4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/mm4.imageset/mm4.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm5.imageset/mm5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/mm5.imageset/mm5.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm6.imageset/mm6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/mm6.imageset/mm6.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/pic.imageset/lmm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/pic.imageset/lmm.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/bg_mm.imageset/bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/bg_mm.imageset/bg.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/arrow.imageset/arrow_normal@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo/Images.xcassets/arrow.imageset/arrow_normal@2x.png
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/xcuserdata/jianren.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/xcuserdata/renxiaojian.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/project.xcworkspace/xcuserdata/jianren.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo.xcodeproj/project.xcworkspace/xcuserdata/jianren.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/project.xcworkspace/xcuserdata/renxiaojian.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xiaomi6s/SliderZoom/HEAD/SlideZoomMenuDemo.xcodeproj/project.xcworkspace/xcuserdata/renxiaojian.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/LeftCell.h:
--------------------------------------------------------------------------------
1 | //
2 | // LeftCell.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/9.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface LeftCell : UITableViewCell
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/HomeViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // HomeViewController.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/8.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface HomeViewController : UIViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/NextViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // NextViewController.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/9.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NextViewController : UIViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/MainViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // MainViewController.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/4/8.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MainViewController : UIViewController
12 | @property (weak, nonatomic) IBOutlet UITableView *tableView;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/bg_mm.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "bg.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "mm1.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "mm2.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm3.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "mm3.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm4.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "mm4.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm5.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "mm5.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/mm6.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "mm6.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/pic.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "lmm.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/arrow.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "arrow_normal@2x.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/LeftCell.m:
--------------------------------------------------------------------------------
1 | //
2 | // LeftCell.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/9.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "LeftCell.h"
10 |
11 | @implementation LeftCell
12 |
13 | - (void)awakeFromNib {
14 |
15 | }
16 |
17 | - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
18 | [super setSelected:selected animated:animated];
19 |
20 | }
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/MainCell.h:
--------------------------------------------------------------------------------
1 | //
2 | // MainCell.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/9.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MainCell : UITableViewCell
12 | @property (weak, nonatomic) IBOutlet UIImageView *imgView;
13 | @property (weak, nonatomic) IBOutlet UILabel *text;
14 | @property (weak, nonatomic) IBOutlet UILabel *detail;
15 |
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "SLideZoomMenuController.h"
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 | @property(nonatomic, strong) SLideZoomMenuController *slider;
15 |
16 |
17 | @end
18 |
19 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 |
11 | @interface ViewController ()
12 |
13 | @end
14 |
15 | @implementation ViewController
16 |
17 | - (void)viewDidLoad {
18 | [super viewDidLoad];
19 |
20 | }
21 |
22 | - (void)didReceiveMemoryWarning {
23 | [super didReceiveMemoryWarning];
24 |
25 | }
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/LeftViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // LeftViewController.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface LeftViewController : UIViewController
12 | @property (weak, nonatomic) IBOutlet UITableView *tableView;
13 | @property (weak, nonatomic) IBOutlet UIImageView *picImgView;
14 |
15 | @property (nonatomic, assign) BOOL didSelectInitialViewController;
16 |
17 | @property(nonatomic, assign) int selectedIndex;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/SlideZoomMenu/SLideZoomMenuController.h:
--------------------------------------------------------------------------------
1 | //
2 | // SLideZoomMenuController.h
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface SLideZoomMenuController : UIViewController
12 |
13 | @property(nonatomic, strong) UIViewController *leftViewController;
14 | @property(nonatomic, strong) UIViewController *rootViewController;
15 | @property (weak, nonatomic) IBOutlet UIImageView *bgImageView;
16 |
17 | - (id)initWithRootController:(UIViewController *)rootViewController;
18 |
19 |
20 | @end
21 |
22 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/MainCell.m:
--------------------------------------------------------------------------------
1 | //
2 | // MainCell.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/9.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "MainCell.h"
10 |
11 | @implementation MainCell
12 |
13 | - (void)awakeFromNib {
14 | self.imgView.layer.cornerRadius = 25;
15 | self.imgView.layer.masksToBounds = YES;
16 | self.detail.preferredMaxLayoutWidth = [UIScreen mainScreen].bounds.size.width - 60;
17 | }
18 |
19 | - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
20 | [super setSelected:selected animated:animated];
21 |
22 |
23 | }
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/xcuserdata/jianren.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | SlideZoomMenuDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5964B9C01AB6DED80013131F
16 |
17 | primary
18 |
19 |
20 | 5964B9D91AB6DED80013131F
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/xcuserdata/renxiaojian.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | SlideZoomMenuDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5964B9C01AB6DED80013131F
16 |
17 | primary
18 |
19 |
20 | 5964B9D91AB6DED80013131F
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | }
33 | ],
34 | "info" : {
35 | "version" : 1,
36 | "author" : "xcode"
37 | }
38 | }
--------------------------------------------------------------------------------
/SlideZoomMenuDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.line0.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/HomeViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // HomeViewController.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/8.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "HomeViewController.h"
10 |
11 | @interface HomeViewController ()
12 |
13 | @end
14 |
15 | @implementation HomeViewController
16 |
17 | - (void)viewDidLoad {
18 | [super viewDidLoad];
19 | self.title = @"QQ好友";
20 | }
21 |
22 | - (void)didReceiveMemoryWarning {
23 | [super didReceiveMemoryWarning];
24 |
25 | }
26 |
27 | /*
28 | #pragma mark - Navigation
29 |
30 | // In a storyboard-based application, you will often want to do a little preparation before navigation
31 | - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
32 | // Get the new view controller using [segue destinationViewController].
33 | // Pass the selected object to the new view controller.
34 | }
35 | */
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/NextViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // NextViewController.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by jian on 15/4/9.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "NextViewController.h"
10 |
11 | @interface NextViewController ()
12 |
13 | @end
14 |
15 | @implementation NextViewController
16 |
17 | - (void)viewDidLoad {
18 | [super viewDidLoad];
19 | self.title = @"next";
20 | }
21 |
22 | - (void)didReceiveMemoryWarning {
23 | [super didReceiveMemoryWarning];
24 | // Dispose of any resources that can be recreated.
25 | }
26 |
27 | /*
28 | #pragma mark - Navigation
29 |
30 | // In a storyboard-based application, you will often want to do a little preparation before navigation
31 | - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
32 | // Get the new view controller using [segue destinationViewController].
33 | // Pass the selected object to the new view controller.
34 | }
35 | */
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemoTests/SlideZoomMenuDemoTests.m:
--------------------------------------------------------------------------------
1 | //
2 | // SlideZoomMenuDemoTests.m
3 | // SlideZoomMenuDemoTests
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 |
12 | @interface SlideZoomMenuDemoTests : XCTestCase
13 |
14 | @end
15 |
16 | @implementation SlideZoomMenuDemoTests
17 |
18 | - (void)setUp {
19 | [super setUp];
20 | // Put setup code here. This method is called before the invocation of each test method in the class.
21 | }
22 |
23 | - (void)tearDown {
24 | // Put teardown code here. This method is called after the invocation of each test method in the class.
25 | [super tearDown];
26 | }
27 |
28 | - (void)testExample {
29 | // This is an example of a functional test case.
30 | XCTAssert(YES, @"Pass");
31 | }
32 |
33 | - (void)testPerformanceExample {
34 | // This is an example of a performance test case.
35 | [self measureBlock:^{
36 | // Put the code you want to measure the time of here.
37 | }];
38 | }
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/HomeViewController.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/NextViewController.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.line0.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | APPL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 | LSRequiresIPhoneOS
24 |
25 | UILaunchStoryboardName
26 | LaunchScreen
27 | UIMainStoryboardFile
28 | Main
29 | UIRequiredDeviceCapabilities
30 |
31 | armv7
32 |
33 | UISupportedInterfaceOrientations
34 |
35 | UIInterfaceOrientationPortrait
36 | UIInterfaceOrientationLandscapeLeft
37 | UIInterfaceOrientationLandscapeRight
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Base.lproj/Main.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/project.xcworkspace/xcshareddata/SlideZoomMenuDemo.xccheckout:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDESourceControlProjectFavoriteDictionaryKey
6 |
7 | IDESourceControlProjectIdentifier
8 | 30D9D82F-376E-4A5D-BCAF-BA9D2903E3AA
9 | IDESourceControlProjectName
10 | SlideZoomMenuDemo
11 | IDESourceControlProjectOriginsDictionary
12 |
13 | 489A332FA9B2F104A0AD9E42E49E2532F8CE5CF3
14 | https://github.com/Xiaomi6s/SliderZoom.git
15 |
16 | IDESourceControlProjectPath
17 | SlideZoomMenuDemo.xcodeproj
18 | IDESourceControlProjectRelativeInstallPathDictionary
19 |
20 | 489A332FA9B2F104A0AD9E42E49E2532F8CE5CF3
21 | ../..
22 |
23 | IDESourceControlProjectURL
24 | https://github.com/Xiaomi6s/SliderZoom.git
25 | IDESourceControlProjectVersion
26 | 111
27 | IDESourceControlProjectWCCIdentifier
28 | 489A332FA9B2F104A0AD9E42E49E2532F8CE5CF3
29 | IDESourceControlProjectWCConfigurations
30 |
31 |
32 | IDESourceControlRepositoryExtensionIdentifierKey
33 | public.vcs.git
34 | IDESourceControlWCCIdentifierKey
35 | 489A332FA9B2F104A0AD9E42E49E2532F8CE5CF3
36 | IDESourceControlWCCName
37 | SliderZoom
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/SlideZoomMenu/SLideZoomMenuController.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/LeftCell.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/AppDelegate.m:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "AppDelegate.h"
10 | #import "MainViewController.h"
11 | #import "LeftViewController.h"
12 |
13 | @interface AppDelegate ()
14 |
15 | @end
16 |
17 | @implementation AppDelegate
18 |
19 |
20 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
21 | MainViewController *mainVC = [MainViewController new];
22 | LeftViewController *leftVC = [[LeftViewController alloc] init];
23 | leftVC.selectedIndex = 1;
24 | UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:mainVC];
25 | SLideZoomMenuController *slideZoomMenu = [[SLideZoomMenuController alloc] initWithRootController:nav];
26 | slideZoomMenu.leftViewController = leftVC;
27 | self.window.rootViewController = slideZoomMenu;
28 | self.slider = slideZoomMenu;
29 | return YES;
30 | }
31 |
32 | - (void)applicationWillResignActive:(UIApplication *)application {
33 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
34 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
35 | }
36 |
37 | - (void)applicationDidEnterBackground:(UIApplication *)application {
38 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
39 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
40 | }
41 |
42 | - (void)applicationWillEnterForeground:(UIApplication *)application {
43 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
44 | }
45 |
46 | - (void)applicationDidBecomeActive:(UIApplication *)application {
47 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
48 | }
49 |
50 | - (void)applicationWillTerminate:(UIApplication *)application {
51 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
52 | }
53 |
54 | @end
55 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/MainViewController.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/LeftViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // LeftViewController.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "LeftViewController.h"
10 | #import "AppDelegate.h"
11 | #import "HomeViewController.h"
12 | #import "MainViewController.h"
13 | #import "LeftCell.h"
14 | @interface LeftViewController ()
15 |
16 | @property(nonatomic, strong) NSArray *titles;
17 |
18 | @end
19 |
20 | @implementation LeftViewController
21 |
22 | - (void)viewDidLoad {
23 | [super viewDidLoad];
24 | self.titles = @[@"我的QQ会员",@"QQ钱包",@"网上营业厅",@"我的好友",@"我的群聊",@"我的收藏"];
25 | self.picImgView.layer.cornerRadius = 30;
26 | self.picImgView.layer.masksToBounds = YES;
27 | self.picImgView.backgroundColor = [UIColor blueColor];
28 | self.view.backgroundColor = [UIColor clearColor];
29 | self.tableView.backgroundColor = [UIColor clearColor];
30 | self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
31 | [self.tableView registerNib:[UINib nibWithNibName:@"LeftCell" bundle:nil] forCellReuseIdentifier:@"LeftCell"];
32 | [self performSelector:@selector(setupSlected) withObject:nil afterDelay:0.01];
33 |
34 | }
35 |
36 | - (void)setupSlected
37 | {
38 | [self tableView:[self tableView] didSelectRowAtIndexPath:[NSIndexPath indexPathForRow:self.selectedIndex inSection:0]];
39 | [self.tableView selectRowAtIndexPath:[NSIndexPath indexPathForItem:self.selectedIndex inSection:0] animated:NO scrollPosition:UITableViewScrollPositionNone];
40 | }
41 |
42 |
43 | - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
44 | {
45 | return self.titles.count;
46 | }
47 |
48 | - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
49 | {
50 | return 50;
51 | }
52 |
53 | - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
54 | {
55 | static NSString *cellIdentifier = @"LeftCell";
56 | UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
57 | cell.backgroundColor = [UIColor clearColor];
58 | cell.textLabel.font = [UIFont systemFontOfSize:16];
59 | cell.textLabel.text =[NSString stringWithFormat: @"%@",self.titles[indexPath.row]];
60 | return cell;
61 | }
62 |
63 | - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
64 | {
65 | AppDelegate *app = [UIApplication sharedApplication].delegate;
66 | if (indexPath.row % 2 == 1) {
67 | HomeViewController *homeVC = [[HomeViewController alloc] init];
68 | UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:homeVC];
69 | app.slider.rootViewController = nav;
70 | }
71 | else {
72 | MainViewController *mainVC = [[MainViewController alloc] init];
73 | UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:mainVC];
74 | app.slider.rootViewController = nav;
75 | }
76 | }
77 |
78 | - (void)didReceiveMemoryWarning {
79 | [super didReceiveMemoryWarning];
80 |
81 | }
82 |
83 |
84 | @end
85 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/Base.lproj/LaunchScreen.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
20 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/MainViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // MainViewController.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/4/8.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "MainViewController.h"
10 | #import "MainCell.h"
11 | #import "NextViewController.h"
12 | @interface MainViewController ()
13 |
14 | @property(nonatomic, strong) NSArray *dataSoruce;
15 |
16 | @end
17 |
18 | @implementation MainViewController
19 |
20 | - (void)viewDidLoad {
21 | [super viewDidLoad];
22 | self.title = @"我的会员";
23 | self.dataSoruce = @[@{@"image":@"mm1",@"name":@"网络的",@"detail":@"网络的美女太多了吧"},
24 | @{@"image":@"mm2",@"name":@"古典的",@"detail":@"中国古代十大美女,包括妇孺皆知的古代四大美女,沉鱼的西施、闭月的貂蝉、落雁的王昭君、羞花的杨贵妃。另外六位分别是集三千宠爱于一身的冯小怜、一代妖姬苏妲己、命运凄惨的赵飞燕、与西施比美的郑旦、千金一笑的褒姒、因《洛神赋》被传为“洛神”的甄氏(甄宓)"},
25 | @{@"image":@"mm3",@"name":@"清纯的",@"detail":@"西施浣纱西施,名夷光,春秋战国时期出生于浙江诸暨苎萝村。天生丽质,五官端正,粉面桃花,相貌过人。时越国称臣於吴国,越王勾践卧薪尝胆,谋复国。在国难当头之际,西施忍辱负重,以身许国,与郑旦一起由越王勾践献给吴王夫差,成为吴王最宠爱的妃子。把吴王迷惑得众叛亲离,无心国事,为勾践的东山再起起了掩护的作用。表现了一个爱国女子的高尚思想情操。后吴国终被勾践所灭。吴被灭后,越王勾践班师回朝,携西施以归。越王勾践的夫人潜使人引出,负以大石沉于江中,曰:“此亡国之物,留之何用?”后人不知其事,讹传与范蠡泛舟五湖,不知所终。遂有“载去西施岂无意?恐留倾国误君王”之句。又有言范蠡恐越王复迷其色,乃以计沉于江中,此是错误的说法。"},
26 | @{@"image":@"mm4",@"name":@"可爱的",@"detail":@"昭君画像王嫱,号昭君,南郡秭归(今湖北省兴山县)人。汉元帝时以“良家子”入选掖庭的。时,呼韩邪来朝,帝敕以五女赐之。王昭君入宫数年,不得见御,积悲怨,乃请掖庭令求行。呼韩邪临辞大会,帝召五女以示之。昭君亦有风华绝代之容,倾国倾城之貌,光明汉宫,顾影徘徊,竦动左右。帝见大惊,意欲留之,而难于失信,遂与匈奴。昭君出塞后,汉匈两族团结和睦,国泰民安。公元前31年,呼韩邪单于亡故,留下一子,名伊屠智伢师,后为匈奴右日逐王。时,王昭君以大局为重,忍受极大委屈,按照匈奴“父死,妻其后母”的风俗,嫁给呼韩邪的长子复株累单于雕陶莫皋。王昭君的历史功绩,不仅仅是她主动出塞和亲,更主要的是她出塞之后,使汉朝与匈奴和好,边塞的烽烟熄灭了50年,增强了汉族与匈奴民族之间的民族团结,是符合汉族和匈奴族人民的利益的。她与她的子女后孙以及姻亲们对胡汉两族人民和睦亲善与团结做出了巨大贡献,因此,她得到历史的好评。元代诗人赵介认为王昭君的功劳,不亚于汉朝名将霍去病。昭君的故事,成为我国历史上流传不衰的民族团结的佳话。红颜薄命,昭君年仅33岁就香消玉损,离开人世。"},
27 | @{@"image":@"mm5",@"name":@"性感的",@"detail":@"貂蝉画像貂蝉,在关汉卿的剧本里记载此女名为任红昌,山西并州(今忻州)人。是东汉末年司徒王允的歌女,国色天香,有倾国倾城之貌。见东汉王朝被奸臣董卓所操纵,於月下焚香祷告上天,愿为主人担忧。王允眼看董卓将篡夺东汉王朝,设下连环计。王允先把貂蝉暗地里许给吕布,在明把貂蝉献给董卓。吕布英雄年少,董卓老奸巨猾。为了拉拢吕布,董卓收吕布为义子。二人都是好色之人。从此以后,貂蝉周旋於此二人之间,送吕布於秋波,报董卓於妩媚,把二人撩拨得神魂颠倒。吕布自董卓收貂蝉入府为姬之后,心怀不满。王允便说服吕布,铲除了董卓,而貂蝉也跟随了吕布。吕布死后貂蝉不知所踪,罗贯中在《三国演义》里只有两个人物没有记载去向,其中就有貂蝉。而根据我对三国的研究,我认为貂蝉最终是跟随了曹操,而关羽之所以后来又反叛曹操投奔刘备,就和貂蝉有关。"},
28 | @{@"image":@"mm6",@"name":@"女神",@"detail":@"杨贵妃画像杨贵妃,原名杨玉环,唐代蒲州永乐人(山西永济人)。通晓音律,能歌善舞。最初为唐玄宗的第十八子寿王的王妃,唐玄宗见杨玉环的姿色后,欲纳入宫中为女道士,号太真。天宝四年入宫,得唐玄宗宠幸,封为贵妃父兄均因此而得以势倾天下。贵妃每次乘马,都有大宦官高力士亲至执鞭,贵妃的织绣工就有七百人,更有争献珍玩者。岭南经略史张九章,广陵长史王翼,因所献精美,二人均被升官。于是,百官竟相仿效。杨贵妃喜爱岭南荔枝,就有人千方百计急运新鲜荔枝到长安。后安史之乱,唐玄宗逃离长安,途至马嵬坡,六军不肯前行,说是因为杨国忠(贵妃之堂兄)通于胡人,而致有安禄山之反,玄宗为息军心,乃杀杨国忠。六军又不肯前行,谓杨国忠为贵妃堂兄,堂兄有罪,堂妹亦难免,贵妃亦被缢死于路祠。安史之乱与杨贵妃无关,她成了唐玄宗的替罪羔羊。"}];
29 | [self.tableView registerNib:[UINib nibWithNibName:@"MainCell" bundle:nil] forCellReuseIdentifier:@"MainCell"];
30 |
31 | }
32 |
33 | - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
34 | {
35 | return self.dataSoruce.count;
36 | }
37 |
38 | - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
39 | {
40 | MainCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MainCell"];
41 | cell.imgView.image = [UIImage imageNamed:[self.dataSoruce[indexPath.row] objectForKey:@"image"]];
42 | cell.text.text = [self.dataSoruce[indexPath.row] objectForKey:@"name"];
43 | cell.detail.text = [self.dataSoruce[indexPath.row] objectForKey:@"detail"];
44 | [cell.contentView layoutIfNeeded];
45 | [cell.contentView updateConstraintsIfNeeded];
46 | CGSize size = [cell.contentView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
47 | return size.height + 1;
48 |
49 | }
50 |
51 | - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
52 | {
53 | MainCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MainCell"];
54 | cell.imgView.image = [UIImage imageNamed:[self.dataSoruce[indexPath.row] objectForKey:@"image"]];
55 | cell.text.text = [self.dataSoruce[indexPath.row] objectForKey:@"name"];
56 | cell.detail.text = [self.dataSoruce[indexPath.row] objectForKey:@"detail"];
57 | return cell;
58 | }
59 |
60 |
61 | - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
62 | {
63 | NextViewController *nextVC = [NextViewController new];
64 | [self.navigationController pushViewController:nextVC animated:YES];
65 | }
66 |
67 |
68 |
69 | - (void)didReceiveMemoryWarning {
70 | [super didReceiveMemoryWarning];
71 |
72 | }
73 |
74 |
75 |
76 | @end
77 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/xcuserdata/jianren.xcuserdatad/xcschemes/SlideZoomMenuDemo.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
29 |
35 |
36 |
37 |
38 |
39 |
44 |
45 |
47 |
53 |
54 |
55 |
56 |
57 |
63 |
64 |
65 |
66 |
75 |
77 |
83 |
84 |
85 |
86 |
87 |
88 |
94 |
96 |
102 |
103 |
104 |
105 |
107 |
108 |
111 |
112 |
113 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/xcuserdata/renxiaojian.xcuserdatad/xcschemes/SlideZoomMenuDemo.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
29 |
35 |
36 |
37 |
38 |
39 |
44 |
45 |
47 |
53 |
54 |
55 |
56 |
57 |
63 |
64 |
65 |
66 |
75 |
77 |
83 |
84 |
85 |
86 |
87 |
88 |
94 |
96 |
102 |
103 |
104 |
105 |
107 |
108 |
111 |
112 |
113 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/MainCell.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
31 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/ViewControllers/LeftViewController.xib:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
46 |
53 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo/SlideZoomMenu/SLideZoomMenuController.m:
--------------------------------------------------------------------------------
1 | //
2 | // SLideZoomMenuController.m
3 | // SlideZoomMenuDemo
4 | //
5 | // Created by renxiaojian on 15/3/16.
6 | // Copyright (c) 2015年 renxiaojian. All rights reserved.
7 | //
8 |
9 | #import "SLideZoomMenuController.h"
10 |
11 | @interface SLideZoomMenuController ()
12 |
13 | @property(nonatomic, assign) BOOL isShow;
14 | @property(nonatomic, assign) CGPoint startPoint;
15 | @property(nonatomic, strong) UIPanGestureRecognizer *rightPan;
16 | @property(nonatomic, strong) UIPanGestureRecognizer *leftPan;
17 | @property(nonatomic, strong) UITapGestureRecognizer *tap;
18 |
19 | @end
20 |
21 | @implementation SLideZoomMenuController
22 |
23 | - (id)initWithRootController:(UIViewController *)rootViewController
24 | {
25 | self = [self init];
26 | if (self) {
27 | self.rootViewController = rootViewController;
28 |
29 | }
30 | return self;
31 | }
32 |
33 | - (id)init
34 | {
35 | self = [super init];
36 | if (self) {
37 | self.isShow = NO;
38 | }
39 | return self;
40 | }
41 |
42 | - (void)viewDidLoad {
43 | [super viewDidLoad];
44 |
45 | }
46 |
47 | - (void)setupRoot
48 | {
49 | if (self.rootViewController) {
50 | UIView *view = self.rootViewController.view;
51 | view.frame = self.view.frame;
52 | [self.bgImageView addSubview:view];
53 | [self addmenuItem];
54 | }
55 | }
56 |
57 | - (void)addmenuItem
58 | {
59 | UIViewController *mainViewcontroller = nil;
60 | if ([self.rootViewController isKindOfClass:[UINavigationController class]]) {
61 | UINavigationController *nav = (UINavigationController *)self.rootViewController;
62 | mainViewcontroller = nav.viewControllers.firstObject;
63 | }
64 | UIBarButtonItem *barItem = [[UIBarButtonItem alloc] initWithTitle:@"左" style:UIBarButtonItemStylePlain target:self action:@selector(showLeft)];
65 | mainViewcontroller.navigationItem.leftBarButtonItem = barItem;
66 | }
67 |
68 | - (void)setRootViewController:(UIViewController *)rootViewController
69 | {
70 | if (_rootViewController) {
71 | [_rootViewController.view removeFromSuperview];
72 | _rootViewController = nil;
73 | }
74 | _rootViewController = rootViewController;
75 | [self setupRoot];
76 | UIPanGestureRecognizer *pan = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)];
77 | pan.delegate = (id )self;
78 | [self.rootViewController.view addGestureRecognizer:pan];
79 | self.rightPan = pan;
80 |
81 | UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
82 | [self.rootViewController.view addGestureRecognizer:tap];
83 | self.tap = tap;
84 | tap.enabled = NO;
85 |
86 | UIPanGestureRecognizer *leftPan = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handleLeftPan:)];
87 | leftPan.delegate = (id )self;
88 | [self.rootViewController.view addGestureRecognizer:leftPan];
89 | self.leftPan = leftPan;
90 | self.leftPan.enabled = NO;
91 | if (self.isShow) {
92 |
93 | CGRect rect = self.rootViewController.view.frame;
94 | rect.origin.x = self.view.bounds.size.width - 60;
95 | rect.origin.y = self.view.bounds.size.height/4;
96 | rect.size.height = self.view.bounds.size.height/2;
97 | rect.size.width = self.view.bounds.size.width/2;
98 | self.rootViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
99 | self.rootViewController.view.frame = rect;
100 | [self showLeft];
101 | }
102 |
103 | }
104 |
105 | - (void)setLeftViewController:(UIViewController *)leftViewController
106 | {
107 | _leftViewController = leftViewController;
108 | UIView *view = self.leftViewController.view;
109 | view.frame = self.view.frame;
110 | [self.bgImageView insertSubview:view atIndex:0];
111 | [self performSelector:@selector(setupLeft) withObject:nil afterDelay:0.01];
112 |
113 | }
114 |
115 | - (void)setupLeft
116 | {
117 |
118 | CGRect rect = self.leftViewController.view.frame;
119 | rect.origin.x = -60;
120 | rect.origin.y = self.view.bounds.size.height/4;
121 | rect.size.height = self.view.bounds.size.height/2;
122 | rect.size.width = self.view.bounds.size.width/2;
123 | self.leftViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
124 | self.leftViewController.view.frame = rect;
125 | self.leftViewController.view.alpha = 0;
126 |
127 | }
128 |
129 | - (void)rootIsSCrolling:(BOOL)isScroll
130 | {
131 | UIViewController *mainViewcontroller = nil;
132 | if ([self.rootViewController isKindOfClass:[UINavigationController class]]) {
133 | UINavigationController *nav = (UINavigationController *)self.rootViewController;
134 | mainViewcontroller = nav.viewControllers.firstObject;
135 | mainViewcontroller.view.userInteractionEnabled = isScroll;
136 | }
137 | }
138 |
139 | - (void)handleLeftPan:(UIPanGestureRecognizer *)leftPan
140 | {
141 | CGPoint locationPoint = [leftPan locationInView:self.view];
142 | CGFloat offsetX = - (locationPoint.x - self.startPoint.x);
143 | if (leftPan.state == UIGestureRecognizerStateChanged) {
144 | if (locationPoint.x -self.startPoint.x <= -6) {
145 | CGFloat leftOffsetX = offsetX * 60/(self.view.bounds.size.width - 60);
146 | CGFloat rootZoom = offsetX/(self.view.bounds.size.width - 60) * 0.5;
147 | CGRect rootRect = self.rootViewController.view.frame;
148 | rootRect.origin.x = [UIScreen mainScreen].bounds.size.width- 60 - offsetX;
149 | self.rootViewController.view.frame = rootRect;
150 | self.rootViewController.view.transform = CGAffineTransformMakeScale(0.5+ rootZoom, 0.5 +rootZoom);
151 | CGRect leftRect = self.leftViewController.view.frame;
152 | leftRect.origin.x = -leftOffsetX;
153 | self.leftViewController.view.frame = leftRect;
154 | self.leftViewController.view.transform = CGAffineTransformMakeScale(1-rootZoom ,1-rootZoom);
155 | self.leftViewController.view.alpha = 1.0 - offsetX/(self.view.bounds.size.width - 60) *1.0;
156 | }
157 | else
158 | {
159 | return;
160 | }
161 | if (offsetX >= (self.view.bounds.size.width - 60)) {
162 | leftPan.enabled = NO;
163 | }
164 | }
165 | else if (leftPan.state == UIGestureRecognizerStateCancelled || leftPan.state == UIGestureRecognizerStateEnded)
166 | {
167 | if (offsetX >= [UIScreen mainScreen].bounds.size.width/2) {
168 | CGRect rect = self.rootViewController.view.frame;
169 | rect.origin.x = 0;
170 | rect.origin.y = 0;
171 | rect.size.height = self.view.bounds.size.height;
172 | rect.size.width = self.view.bounds.size.width;
173 | CGRect rect2 = self.leftViewController.view.frame;
174 | rect2.origin.x = -60;
175 | rect2.origin.y = self.view.bounds.size.height/4;
176 | rect2.size.height = self.view.bounds.size.height/2;
177 | rect2.size.width = self.view.bounds.size.width/2;
178 | [UIView animateWithDuration:.25 animations:^{
179 | self.rootViewController.view.transform = CGAffineTransformMakeScale(1, 1);
180 | self.rootViewController.view.frame = rect;
181 | self.leftViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
182 | self.leftViewController.view.frame = rect2;
183 | self.leftViewController.view.alpha = 0;
184 | } completion:^(BOOL finished) {
185 | self.isShow = !self.isShow;
186 | self.rightPan.enabled = YES;
187 | self.leftPan.enabled = NO;
188 | self.tap.enabled = NO;
189 | [self rootIsSCrolling:YES];
190 | }];
191 |
192 |
193 | }
194 | else
195 | {
196 | CGRect rect = self.rootViewController.view.frame;
197 | rect.origin.x = self.view.bounds.size.width - 60;
198 | rect.origin.y = self.view.bounds.size.height/4;
199 | rect.size.height = self.view.bounds.size.height/2;
200 | rect.size.width = self.view.bounds.size.width/2;
201 | CGRect rect2 = self.leftViewController.view.frame;
202 | rect2.origin.x = 0;
203 | rect2.origin.y = 0;
204 | rect2.size.height = self.view.bounds.size.height;
205 | rect2.size.width = self.view.bounds.size.width;
206 | [UIView animateWithDuration:0.25 animations:^{
207 | self.rootViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
208 | self.rootViewController.view.frame = rect;
209 | self.leftViewController.view.transform = CGAffineTransformMakeScale(1, 1);
210 | self.leftViewController.view.frame = rect2;
211 | self.leftViewController.view.alpha = 1;
212 | } completion:^(BOOL finished) {
213 | self.isShow = YES;
214 | self.leftPan.enabled = YES;
215 | self.tap.enabled = YES;
216 | [self rootIsSCrolling:NO];
217 | }];
218 |
219 | }
220 |
221 | }
222 |
223 | }
224 |
225 | - (void)handleTap:(UITapGestureRecognizer *)tap
226 | {
227 | if (self.isShow) {
228 | [self showLeft];
229 | }
230 | }
231 |
232 | - (void)handlePan:(UIPanGestureRecognizer *)pan
233 | {
234 | CGPoint locationPoint = [pan locationInView:self.view];
235 | CGFloat offsetX = locationPoint.x - self.startPoint.x;
236 | if (pan.state == UIGestureRecognizerStateChanged) {
237 | if (locationPoint.x -self.startPoint.x >=6) {
238 | CGFloat leftOffsetX = offsetX * 60/(self.view.bounds.size.width - 60);
239 | CGFloat rootZoom = offsetX/(self.view.bounds.size.width - 60) * 0.5;
240 | CGRect rootRect = self.rootViewController.view.frame;
241 | rootRect.origin.x = offsetX;
242 | self.rootViewController.view.frame = rootRect;
243 | self.rootViewController.view.transform = CGAffineTransformMakeScale(1-rootZoom, 1-rootZoom);
244 | CGRect leftRect = self.leftViewController.view.frame;
245 | leftRect.origin.x = leftOffsetX - 60;
246 | leftRect.size.width = self.view.bounds.size.width/2 + leftOffsetX *self.view.bounds.size.width/2/60;
247 | self.leftViewController.view.frame = leftRect;
248 | self.leftViewController.view.transform = CGAffineTransformMakeScale(0.5 +rootZoom , 0.5 +rootZoom);
249 | self.leftViewController.view.alpha = offsetX/(self.view.bounds.size.width - 60) *1.0;
250 | }
251 | else
252 | {
253 | return;
254 | }
255 |
256 | if (offsetX >= (self.view.bounds.size.width - 60)) {
257 | pan.enabled = NO;
258 | }
259 | }
260 | else if (pan.state == UIGestureRecognizerStateEnded || pan.state == UIGestureRecognizerStateCancelled)
261 | {
262 | if (offsetX >= [UIScreen mainScreen].bounds.size.width/2) {
263 | CGRect rect = self.rootViewController.view.frame;
264 | rect.origin.x = self.view.bounds.size.width - 60;
265 | rect.origin.y = self.view.bounds.size.height/4;
266 | rect.size.height = self.view.bounds.size.height/2;
267 | rect.size.width = self.view.bounds.size.width/2;
268 | CGRect rect2 = self.leftViewController.view.frame;
269 | rect2.origin.x = 0;
270 | rect2.origin.y = 0;
271 | rect2.size.height = self.view.bounds.size.height;
272 | rect2.size.width = self.view.bounds.size.width;
273 | [UIView animateWithDuration:0.25 animations:^{
274 | self.rootViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
275 | self.rootViewController.view.frame = rect;
276 | self.leftViewController.view.transform = CGAffineTransformMakeScale(1, 1);
277 | self.leftViewController.view.frame = rect2;
278 | self.leftViewController.view.alpha = 1;
279 | } completion:^(BOOL finished) {
280 | self.isShow = YES;
281 | self.leftPan.enabled = YES;
282 | self.tap.enabled = YES;
283 | [self rootIsSCrolling:NO];
284 | }];
285 |
286 |
287 | }
288 | else
289 | {
290 | CGRect rect = self.rootViewController.view.frame;
291 | rect.origin.x = 0;
292 | rect.origin.y = 0;
293 | rect.size.height = self.view.bounds.size.height;
294 | rect.size.width = self.view.bounds.size.width;
295 | CGRect rect2 = self.leftViewController.view.frame;
296 | rect2.origin.x = -60;
297 | rect2.origin.y = self.view.bounds.size.height/4;
298 | rect2.size.height = self.view.bounds.size.height/2;
299 | rect2.size.width = self.view.bounds.size.width/2;
300 | [UIView animateWithDuration:0.15 animations:^{
301 | self.rootViewController.view.transform = CGAffineTransformMakeScale(1.0, 1.0);
302 | self.rootViewController.view.frame = rect;
303 | self.leftViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
304 | self.leftViewController.view.frame = rect2;
305 | self.leftViewController.view.alpha = 0;
306 | } completion:^(BOOL finished) {
307 | self.isShow = NO;
308 | self.tap.enabled = NO;
309 | }];
310 |
311 | }
312 | }
313 |
314 |
315 | }
316 |
317 | - (void)showLeft
318 | {
319 | if (!self.isShow) {
320 | CGRect rect = self.rootViewController.view.frame;
321 | rect.origin.x = [UIScreen mainScreen].bounds.size.width- 60;
322 | rect.origin.y =self.view.bounds.size.height/4;
323 | rect.size.height = self.view.bounds.size.height/2;
324 | rect.size.width = self.view.bounds.size.width/2;
325 | CGRect rect2 = self.leftViewController.view.frame;
326 | rect2.origin.x = 0;
327 | rect2.origin.y = 0;
328 | rect2.size.height = self.view.bounds.size.height;
329 | rect2.size.width = self.view.bounds.size.width;
330 | [UIView animateWithDuration:.35 animations:^{
331 | self.rootViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
332 | self.rootViewController.view.frame = rect;
333 | self.leftViewController.view.transform = CGAffineTransformMakeScale(1, 1);
334 | self.leftViewController.view.frame = rect2;
335 | self.leftViewController.view.alpha = 1.0;
336 | } completion:^(BOOL finished) {
337 | self.isShow = !self.isShow;
338 | self.leftPan.enabled = YES;
339 | self.tap.enabled = YES;
340 | [self rootIsSCrolling:NO];
341 | }];
342 |
343 | }
344 | else
345 | {
346 | CGRect rect = self.rootViewController.view.frame;
347 | rect.origin.x = 0;
348 | rect.origin.y = 0;
349 | rect.size.height = self.view.bounds.size.height;
350 | rect.size.width = self.view.bounds.size.width;
351 | CGRect rect2 = self.leftViewController.view.frame;
352 | rect2.origin.x = -60;
353 | rect2.origin.y = self.view.bounds.size.height/4;
354 | rect2.size.height = self.view.bounds.size.height/2;
355 | rect2.size.width = self.view.bounds.size.width/2;
356 | [UIView animateWithDuration:.35 animations:^{
357 | self.rootViewController.view.transform = CGAffineTransformMakeScale(1, 1);
358 | self.rootViewController.view.frame = rect;
359 | self.leftViewController.view.transform = CGAffineTransformMakeScale(0.5, 0.5);
360 | self.leftViewController.view.frame = rect2;
361 | self.leftViewController.view.alpha = 0;
362 | } completion:^(BOOL finished) {
363 | self.isShow = !self.isShow;
364 | self.rightPan.enabled = YES;
365 | self.leftPan.enabled = NO;
366 | self.tap.enabled = NO;
367 | [self rootIsSCrolling:YES];
368 | }];
369 |
370 | }
371 | }
372 |
373 |
374 | #pragma mark- UIGestureRecognizerDelegate
375 |
376 | - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
377 | {
378 | self.startPoint = [gestureRecognizer locationInView:self.view];
379 | if (gestureRecognizer == self.rightPan) {
380 | if ([self.rootViewController isKindOfClass:[UINavigationController class]]) {
381 | UINavigationController *nav = (UINavigationController *)self.rootViewController;
382 | NSArray *viewControllers = nav.viewControllers;
383 | if (viewControllers.count > 1) {
384 | return NO;
385 | }
386 | }
387 |
388 | }
389 | return YES;
390 | }
391 |
392 | - (void)didReceiveMemoryWarning {
393 | [super didReceiveMemoryWarning];
394 |
395 | }
396 |
397 |
398 | @end
399 |
--------------------------------------------------------------------------------
/SlideZoomMenuDemo.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 46;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 5964B9C71AB6DED80013131F /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9C61AB6DED80013131F /* main.m */; };
11 | 5964B9CA1AB6DED80013131F /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9C91AB6DED80013131F /* AppDelegate.m */; };
12 | 5964B9CD1AB6DED80013131F /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9CC1AB6DED80013131F /* ViewController.m */; };
13 | 5964B9D01AB6DED80013131F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5964B9CE1AB6DED80013131F /* Main.storyboard */; };
14 | 5964B9D21AB6DED80013131F /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5964B9D11AB6DED80013131F /* Images.xcassets */; };
15 | 5964B9D51AB6DED80013131F /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 5964B9D31AB6DED80013131F /* LaunchScreen.xib */; };
16 | 5964B9E11AB6DED80013131F /* SlideZoomMenuDemoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9E01AB6DED80013131F /* SlideZoomMenuDemoTests.m */; };
17 | 5964B9EF1AB6DF4D0013131F /* LeftViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9ED1AB6DF4D0013131F /* LeftViewController.m */; };
18 | 5964B9F01AB6DF4D0013131F /* LeftViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 5964B9EE1AB6DF4D0013131F /* LeftViewController.xib */; };
19 | 5964B9F41AB6DF5C0013131F /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9F21AB6DF5C0013131F /* MainViewController.m */; };
20 | 5964B9F51AB6DF5C0013131F /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 5964B9F31AB6DF5C0013131F /* MainViewController.xib */; };
21 | 5964B9F91AB6DFA80013131F /* SLideZoomMenuController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5964B9F71AB6DFA80013131F /* SLideZoomMenuController.m */; };
22 | 5964B9FA1AB6DFA80013131F /* SLideZoomMenuController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 5964B9F81AB6DFA80013131F /* SLideZoomMenuController.xib */; };
23 | D459B7C31AD5809F0008B93E /* HomeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D459B7C11AD5809F0008B93E /* HomeViewController.m */; };
24 | D459B7C41AD5809F0008B93E /* HomeViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D459B7C21AD5809F0008B93E /* HomeViewController.xib */; };
25 | D48298BC1AD67344002E7955 /* LeftCell.m in Sources */ = {isa = PBXBuildFile; fileRef = D48298BA1AD67344002E7955 /* LeftCell.m */; };
26 | D48298BD1AD67344002E7955 /* LeftCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D48298BB1AD67344002E7955 /* LeftCell.xib */; };
27 | D48298C11AD67867002E7955 /* MainCell.m in Sources */ = {isa = PBXBuildFile; fileRef = D48298BF1AD67867002E7955 /* MainCell.m */; };
28 | D48298C21AD67867002E7955 /* MainCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D48298C01AD67867002E7955 /* MainCell.xib */; };
29 | D48298C61AD68C4B002E7955 /* NextViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D48298C41AD68C4B002E7955 /* NextViewController.m */; };
30 | D48298C71AD68C4B002E7955 /* NextViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D48298C51AD68C4B002E7955 /* NextViewController.xib */; };
31 | /* End PBXBuildFile section */
32 |
33 | /* Begin PBXContainerItemProxy section */
34 | 5964B9DB1AB6DED80013131F /* PBXContainerItemProxy */ = {
35 | isa = PBXContainerItemProxy;
36 | containerPortal = 5964B9B91AB6DED80013131F /* Project object */;
37 | proxyType = 1;
38 | remoteGlobalIDString = 5964B9C01AB6DED80013131F;
39 | remoteInfo = SlideZoomMenuDemo;
40 | };
41 | /* End PBXContainerItemProxy section */
42 |
43 | /* Begin PBXFileReference section */
44 | 5964B9C11AB6DED80013131F /* SlideZoomMenuDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SlideZoomMenuDemo.app; sourceTree = BUILT_PRODUCTS_DIR; };
45 | 5964B9C51AB6DED80013131F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
46 | 5964B9C61AB6DED80013131F /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
47 | 5964B9C81AB6DED80013131F /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; };
48 | 5964B9C91AB6DED80013131F /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; };
49 | 5964B9CB1AB6DED80013131F /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; };
50 | 5964B9CC1AB6DED80013131F /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = ""; };
51 | 5964B9CF1AB6DED80013131F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; };
52 | 5964B9D11AB6DED80013131F /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; };
53 | 5964B9D41AB6DED80013131F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; };
54 | 5964B9DA1AB6DED80013131F /* SlideZoomMenuDemoTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SlideZoomMenuDemoTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
55 | 5964B9DF1AB6DED80013131F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
56 | 5964B9E01AB6DED80013131F /* SlideZoomMenuDemoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SlideZoomMenuDemoTests.m; sourceTree = ""; };
57 | 5964B9EC1AB6DF4D0013131F /* LeftViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LeftViewController.h; sourceTree = ""; };
58 | 5964B9ED1AB6DF4D0013131F /* LeftViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LeftViewController.m; sourceTree = ""; };
59 | 5964B9EE1AB6DF4D0013131F /* LeftViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = LeftViewController.xib; sourceTree = ""; };
60 | 5964B9F11AB6DF5C0013131F /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; };
61 | 5964B9F21AB6DF5C0013131F /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; };
62 | 5964B9F31AB6DF5C0013131F /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; };
63 | 5964B9F61AB6DFA80013131F /* SLideZoomMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SLideZoomMenuController.h; sourceTree = ""; };
64 | 5964B9F71AB6DFA80013131F /* SLideZoomMenuController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SLideZoomMenuController.m; sourceTree = ""; };
65 | 5964B9F81AB6DFA80013131F /* SLideZoomMenuController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SLideZoomMenuController.xib; sourceTree = ""; };
66 | D459B7C01AD5809F0008B93E /* HomeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeViewController.h; sourceTree = ""; };
67 | D459B7C11AD5809F0008B93E /* HomeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HomeViewController.m; sourceTree = ""; };
68 | D459B7C21AD5809F0008B93E /* HomeViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = HomeViewController.xib; sourceTree = ""; };
69 | D48298B91AD67344002E7955 /* LeftCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LeftCell.h; sourceTree = ""; };
70 | D48298BA1AD67344002E7955 /* LeftCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LeftCell.m; sourceTree = ""; };
71 | D48298BB1AD67344002E7955 /* LeftCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = LeftCell.xib; sourceTree = ""; };
72 | D48298BE1AD67867002E7955 /* MainCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainCell.h; sourceTree = ""; };
73 | D48298BF1AD67867002E7955 /* MainCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainCell.m; sourceTree = ""; };
74 | D48298C01AD67867002E7955 /* MainCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainCell.xib; sourceTree = ""; };
75 | D48298C31AD68C4B002E7955 /* NextViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NextViewController.h; sourceTree = ""; };
76 | D48298C41AD68C4B002E7955 /* NextViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NextViewController.m; sourceTree = ""; };
77 | D48298C51AD68C4B002E7955 /* NextViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = NextViewController.xib; sourceTree = ""; };
78 | /* End PBXFileReference section */
79 |
80 | /* Begin PBXFrameworksBuildPhase section */
81 | 5964B9BE1AB6DED80013131F /* Frameworks */ = {
82 | isa = PBXFrameworksBuildPhase;
83 | buildActionMask = 2147483647;
84 | files = (
85 | );
86 | runOnlyForDeploymentPostprocessing = 0;
87 | };
88 | 5964B9D71AB6DED80013131F /* Frameworks */ = {
89 | isa = PBXFrameworksBuildPhase;
90 | buildActionMask = 2147483647;
91 | files = (
92 | );
93 | runOnlyForDeploymentPostprocessing = 0;
94 | };
95 | /* End PBXFrameworksBuildPhase section */
96 |
97 | /* Begin PBXGroup section */
98 | 5964B9B81AB6DED80013131F = {
99 | isa = PBXGroup;
100 | children = (
101 | 5964B9C31AB6DED80013131F /* SlideZoomMenuDemo */,
102 | 5964B9DD1AB6DED80013131F /* SlideZoomMenuDemoTests */,
103 | 5964B9C21AB6DED80013131F /* Products */,
104 | );
105 | sourceTree = "";
106 | };
107 | 5964B9C21AB6DED80013131F /* Products */ = {
108 | isa = PBXGroup;
109 | children = (
110 | 5964B9C11AB6DED80013131F /* SlideZoomMenuDemo.app */,
111 | 5964B9DA1AB6DED80013131F /* SlideZoomMenuDemoTests.xctest */,
112 | );
113 | name = Products;
114 | sourceTree = "";
115 | };
116 | 5964B9C31AB6DED80013131F /* SlideZoomMenuDemo */ = {
117 | isa = PBXGroup;
118 | children = (
119 | 5964B9C81AB6DED80013131F /* AppDelegate.h */,
120 | 5964B9C91AB6DED80013131F /* AppDelegate.m */,
121 | 5964B9CB1AB6DED80013131F /* ViewController.h */,
122 | 5964B9CC1AB6DED80013131F /* ViewController.m */,
123 | 5964B9CE1AB6DED80013131F /* Main.storyboard */,
124 | 5964B9EA1AB6DF330013131F /* ViewControllers */,
125 | 5964B9EB1AB6DF330013131F /* SlideZoomMenu */,
126 | 5964B9D11AB6DED80013131F /* Images.xcassets */,
127 | 5964B9D31AB6DED80013131F /* LaunchScreen.xib */,
128 | 5964B9C41AB6DED80013131F /* Supporting Files */,
129 | );
130 | path = SlideZoomMenuDemo;
131 | sourceTree = "";
132 | };
133 | 5964B9C41AB6DED80013131F /* Supporting Files */ = {
134 | isa = PBXGroup;
135 | children = (
136 | 5964B9C51AB6DED80013131F /* Info.plist */,
137 | 5964B9C61AB6DED80013131F /* main.m */,
138 | );
139 | name = "Supporting Files";
140 | sourceTree = "";
141 | };
142 | 5964B9DD1AB6DED80013131F /* SlideZoomMenuDemoTests */ = {
143 | isa = PBXGroup;
144 | children = (
145 | 5964B9E01AB6DED80013131F /* SlideZoomMenuDemoTests.m */,
146 | 5964B9DE1AB6DED80013131F /* Supporting Files */,
147 | );
148 | path = SlideZoomMenuDemoTests;
149 | sourceTree = "";
150 | };
151 | 5964B9DE1AB6DED80013131F /* Supporting Files */ = {
152 | isa = PBXGroup;
153 | children = (
154 | 5964B9DF1AB6DED80013131F /* Info.plist */,
155 | );
156 | name = "Supporting Files";
157 | sourceTree = "";
158 | };
159 | 5964B9EA1AB6DF330013131F /* ViewControllers */ = {
160 | isa = PBXGroup;
161 | children = (
162 | D48298B91AD67344002E7955 /* LeftCell.h */,
163 | D48298BA1AD67344002E7955 /* LeftCell.m */,
164 | D48298BB1AD67344002E7955 /* LeftCell.xib */,
165 | D48298BE1AD67867002E7955 /* MainCell.h */,
166 | D48298BF1AD67867002E7955 /* MainCell.m */,
167 | D48298C01AD67867002E7955 /* MainCell.xib */,
168 | 5964B9EC1AB6DF4D0013131F /* LeftViewController.h */,
169 | 5964B9ED1AB6DF4D0013131F /* LeftViewController.m */,
170 | 5964B9EE1AB6DF4D0013131F /* LeftViewController.xib */,
171 | 5964B9F11AB6DF5C0013131F /* MainViewController.h */,
172 | 5964B9F21AB6DF5C0013131F /* MainViewController.m */,
173 | 5964B9F31AB6DF5C0013131F /* MainViewController.xib */,
174 | D459B7C01AD5809F0008B93E /* HomeViewController.h */,
175 | D459B7C11AD5809F0008B93E /* HomeViewController.m */,
176 | D459B7C21AD5809F0008B93E /* HomeViewController.xib */,
177 | D48298C31AD68C4B002E7955 /* NextViewController.h */,
178 | D48298C41AD68C4B002E7955 /* NextViewController.m */,
179 | D48298C51AD68C4B002E7955 /* NextViewController.xib */,
180 | );
181 | path = ViewControllers;
182 | sourceTree = "";
183 | };
184 | 5964B9EB1AB6DF330013131F /* SlideZoomMenu */ = {
185 | isa = PBXGroup;
186 | children = (
187 | 5964B9F61AB6DFA80013131F /* SLideZoomMenuController.h */,
188 | 5964B9F71AB6DFA80013131F /* SLideZoomMenuController.m */,
189 | 5964B9F81AB6DFA80013131F /* SLideZoomMenuController.xib */,
190 | );
191 | path = SlideZoomMenu;
192 | sourceTree = "";
193 | };
194 | /* End PBXGroup section */
195 |
196 | /* Begin PBXNativeTarget section */
197 | 5964B9C01AB6DED80013131F /* SlideZoomMenuDemo */ = {
198 | isa = PBXNativeTarget;
199 | buildConfigurationList = 5964B9E41AB6DED80013131F /* Build configuration list for PBXNativeTarget "SlideZoomMenuDemo" */;
200 | buildPhases = (
201 | 5964B9BD1AB6DED80013131F /* Sources */,
202 | 5964B9BE1AB6DED80013131F /* Frameworks */,
203 | 5964B9BF1AB6DED80013131F /* Resources */,
204 | );
205 | buildRules = (
206 | );
207 | dependencies = (
208 | );
209 | name = SlideZoomMenuDemo;
210 | productName = SlideZoomMenuDemo;
211 | productReference = 5964B9C11AB6DED80013131F /* SlideZoomMenuDemo.app */;
212 | productType = "com.apple.product-type.application";
213 | };
214 | 5964B9D91AB6DED80013131F /* SlideZoomMenuDemoTests */ = {
215 | isa = PBXNativeTarget;
216 | buildConfigurationList = 5964B9E71AB6DED80013131F /* Build configuration list for PBXNativeTarget "SlideZoomMenuDemoTests" */;
217 | buildPhases = (
218 | 5964B9D61AB6DED80013131F /* Sources */,
219 | 5964B9D71AB6DED80013131F /* Frameworks */,
220 | 5964B9D81AB6DED80013131F /* Resources */,
221 | );
222 | buildRules = (
223 | );
224 | dependencies = (
225 | 5964B9DC1AB6DED80013131F /* PBXTargetDependency */,
226 | );
227 | name = SlideZoomMenuDemoTests;
228 | productName = SlideZoomMenuDemoTests;
229 | productReference = 5964B9DA1AB6DED80013131F /* SlideZoomMenuDemoTests.xctest */;
230 | productType = "com.apple.product-type.bundle.unit-test";
231 | };
232 | /* End PBXNativeTarget section */
233 |
234 | /* Begin PBXProject section */
235 | 5964B9B91AB6DED80013131F /* Project object */ = {
236 | isa = PBXProject;
237 | attributes = {
238 | LastUpgradeCheck = 0620;
239 | ORGANIZATIONNAME = renxiaojian;
240 | TargetAttributes = {
241 | 5964B9C01AB6DED80013131F = {
242 | CreatedOnToolsVersion = 6.2;
243 | };
244 | 5964B9D91AB6DED80013131F = {
245 | CreatedOnToolsVersion = 6.2;
246 | TestTargetID = 5964B9C01AB6DED80013131F;
247 | };
248 | };
249 | };
250 | buildConfigurationList = 5964B9BC1AB6DED80013131F /* Build configuration list for PBXProject "SlideZoomMenuDemo" */;
251 | compatibilityVersion = "Xcode 3.2";
252 | developmentRegion = English;
253 | hasScannedForEncodings = 0;
254 | knownRegions = (
255 | en,
256 | Base,
257 | );
258 | mainGroup = 5964B9B81AB6DED80013131F;
259 | productRefGroup = 5964B9C21AB6DED80013131F /* Products */;
260 | projectDirPath = "";
261 | projectRoot = "";
262 | targets = (
263 | 5964B9C01AB6DED80013131F /* SlideZoomMenuDemo */,
264 | 5964B9D91AB6DED80013131F /* SlideZoomMenuDemoTests */,
265 | );
266 | };
267 | /* End PBXProject section */
268 |
269 | /* Begin PBXResourcesBuildPhase section */
270 | 5964B9BF1AB6DED80013131F /* Resources */ = {
271 | isa = PBXResourcesBuildPhase;
272 | buildActionMask = 2147483647;
273 | files = (
274 | D48298BD1AD67344002E7955 /* LeftCell.xib in Resources */,
275 | 5964B9D01AB6DED80013131F /* Main.storyboard in Resources */,
276 | D48298C21AD67867002E7955 /* MainCell.xib in Resources */,
277 | 5964B9FA1AB6DFA80013131F /* SLideZoomMenuController.xib in Resources */,
278 | 5964B9F01AB6DF4D0013131F /* LeftViewController.xib in Resources */,
279 | 5964B9F51AB6DF5C0013131F /* MainViewController.xib in Resources */,
280 | 5964B9D51AB6DED80013131F /* LaunchScreen.xib in Resources */,
281 | D459B7C41AD5809F0008B93E /* HomeViewController.xib in Resources */,
282 | 5964B9D21AB6DED80013131F /* Images.xcassets in Resources */,
283 | D48298C71AD68C4B002E7955 /* NextViewController.xib in Resources */,
284 | );
285 | runOnlyForDeploymentPostprocessing = 0;
286 | };
287 | 5964B9D81AB6DED80013131F /* Resources */ = {
288 | isa = PBXResourcesBuildPhase;
289 | buildActionMask = 2147483647;
290 | files = (
291 | );
292 | runOnlyForDeploymentPostprocessing = 0;
293 | };
294 | /* End PBXResourcesBuildPhase section */
295 |
296 | /* Begin PBXSourcesBuildPhase section */
297 | 5964B9BD1AB6DED80013131F /* Sources */ = {
298 | isa = PBXSourcesBuildPhase;
299 | buildActionMask = 2147483647;
300 | files = (
301 | D48298BC1AD67344002E7955 /* LeftCell.m in Sources */,
302 | 5964B9CD1AB6DED80013131F /* ViewController.m in Sources */,
303 | 5964B9F91AB6DFA80013131F /* SLideZoomMenuController.m in Sources */,
304 | 5964B9EF1AB6DF4D0013131F /* LeftViewController.m in Sources */,
305 | 5964B9CA1AB6DED80013131F /* AppDelegate.m in Sources */,
306 | D48298C61AD68C4B002E7955 /* NextViewController.m in Sources */,
307 | 5964B9F41AB6DF5C0013131F /* MainViewController.m in Sources */,
308 | D459B7C31AD5809F0008B93E /* HomeViewController.m in Sources */,
309 | 5964B9C71AB6DED80013131F /* main.m in Sources */,
310 | D48298C11AD67867002E7955 /* MainCell.m in Sources */,
311 | );
312 | runOnlyForDeploymentPostprocessing = 0;
313 | };
314 | 5964B9D61AB6DED80013131F /* Sources */ = {
315 | isa = PBXSourcesBuildPhase;
316 | buildActionMask = 2147483647;
317 | files = (
318 | 5964B9E11AB6DED80013131F /* SlideZoomMenuDemoTests.m in Sources */,
319 | );
320 | runOnlyForDeploymentPostprocessing = 0;
321 | };
322 | /* End PBXSourcesBuildPhase section */
323 |
324 | /* Begin PBXTargetDependency section */
325 | 5964B9DC1AB6DED80013131F /* PBXTargetDependency */ = {
326 | isa = PBXTargetDependency;
327 | target = 5964B9C01AB6DED80013131F /* SlideZoomMenuDemo */;
328 | targetProxy = 5964B9DB1AB6DED80013131F /* PBXContainerItemProxy */;
329 | };
330 | /* End PBXTargetDependency section */
331 |
332 | /* Begin PBXVariantGroup section */
333 | 5964B9CE1AB6DED80013131F /* Main.storyboard */ = {
334 | isa = PBXVariantGroup;
335 | children = (
336 | 5964B9CF1AB6DED80013131F /* Base */,
337 | );
338 | name = Main.storyboard;
339 | sourceTree = "";
340 | };
341 | 5964B9D31AB6DED80013131F /* LaunchScreen.xib */ = {
342 | isa = PBXVariantGroup;
343 | children = (
344 | 5964B9D41AB6DED80013131F /* Base */,
345 | );
346 | name = LaunchScreen.xib;
347 | sourceTree = "";
348 | };
349 | /* End PBXVariantGroup section */
350 |
351 | /* Begin XCBuildConfiguration section */
352 | 5964B9E21AB6DED80013131F /* Debug */ = {
353 | isa = XCBuildConfiguration;
354 | buildSettings = {
355 | ALWAYS_SEARCH_USER_PATHS = NO;
356 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
357 | CLANG_CXX_LIBRARY = "libc++";
358 | CLANG_ENABLE_MODULES = YES;
359 | CLANG_ENABLE_OBJC_ARC = YES;
360 | CLANG_WARN_BOOL_CONVERSION = YES;
361 | CLANG_WARN_CONSTANT_CONVERSION = YES;
362 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
363 | CLANG_WARN_EMPTY_BODY = YES;
364 | CLANG_WARN_ENUM_CONVERSION = YES;
365 | CLANG_WARN_INT_CONVERSION = YES;
366 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
367 | CLANG_WARN_UNREACHABLE_CODE = YES;
368 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
369 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
370 | COPY_PHASE_STRIP = NO;
371 | ENABLE_STRICT_OBJC_MSGSEND = YES;
372 | GCC_C_LANGUAGE_STANDARD = gnu99;
373 | GCC_DYNAMIC_NO_PIC = NO;
374 | GCC_OPTIMIZATION_LEVEL = 0;
375 | GCC_PREPROCESSOR_DEFINITIONS = (
376 | "DEBUG=1",
377 | "$(inherited)",
378 | );
379 | GCC_SYMBOLS_PRIVATE_EXTERN = NO;
380 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
381 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
382 | GCC_WARN_UNDECLARED_SELECTOR = YES;
383 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
384 | GCC_WARN_UNUSED_FUNCTION = YES;
385 | GCC_WARN_UNUSED_VARIABLE = YES;
386 | IPHONEOS_DEPLOYMENT_TARGET = 7.0;
387 | MTL_ENABLE_DEBUG_INFO = YES;
388 | ONLY_ACTIVE_ARCH = YES;
389 | SDKROOT = iphoneos;
390 | };
391 | name = Debug;
392 | };
393 | 5964B9E31AB6DED80013131F /* Release */ = {
394 | isa = XCBuildConfiguration;
395 | buildSettings = {
396 | ALWAYS_SEARCH_USER_PATHS = NO;
397 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
398 | CLANG_CXX_LIBRARY = "libc++";
399 | CLANG_ENABLE_MODULES = YES;
400 | CLANG_ENABLE_OBJC_ARC = YES;
401 | CLANG_WARN_BOOL_CONVERSION = YES;
402 | CLANG_WARN_CONSTANT_CONVERSION = YES;
403 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
404 | CLANG_WARN_EMPTY_BODY = YES;
405 | CLANG_WARN_ENUM_CONVERSION = YES;
406 | CLANG_WARN_INT_CONVERSION = YES;
407 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
408 | CLANG_WARN_UNREACHABLE_CODE = YES;
409 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
410 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
411 | COPY_PHASE_STRIP = NO;
412 | ENABLE_NS_ASSERTIONS = NO;
413 | ENABLE_STRICT_OBJC_MSGSEND = YES;
414 | GCC_C_LANGUAGE_STANDARD = gnu99;
415 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
416 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
417 | GCC_WARN_UNDECLARED_SELECTOR = YES;
418 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
419 | GCC_WARN_UNUSED_FUNCTION = YES;
420 | GCC_WARN_UNUSED_VARIABLE = YES;
421 | IPHONEOS_DEPLOYMENT_TARGET = 7.0;
422 | MTL_ENABLE_DEBUG_INFO = NO;
423 | SDKROOT = iphoneos;
424 | VALIDATE_PRODUCT = YES;
425 | };
426 | name = Release;
427 | };
428 | 5964B9E51AB6DED80013131F /* Debug */ = {
429 | isa = XCBuildConfiguration;
430 | buildSettings = {
431 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
432 | INFOPLIST_FILE = SlideZoomMenuDemo/Info.plist;
433 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
434 | PRODUCT_NAME = "$(TARGET_NAME)";
435 | };
436 | name = Debug;
437 | };
438 | 5964B9E61AB6DED80013131F /* Release */ = {
439 | isa = XCBuildConfiguration;
440 | buildSettings = {
441 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
442 | INFOPLIST_FILE = SlideZoomMenuDemo/Info.plist;
443 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
444 | PRODUCT_NAME = "$(TARGET_NAME)";
445 | };
446 | name = Release;
447 | };
448 | 5964B9E81AB6DED80013131F /* Debug */ = {
449 | isa = XCBuildConfiguration;
450 | buildSettings = {
451 | BUNDLE_LOADER = "$(TEST_HOST)";
452 | FRAMEWORK_SEARCH_PATHS = (
453 | "$(SDKROOT)/Developer/Library/Frameworks",
454 | "$(inherited)",
455 | );
456 | GCC_PREPROCESSOR_DEFINITIONS = (
457 | "DEBUG=1",
458 | "$(inherited)",
459 | );
460 | INFOPLIST_FILE = SlideZoomMenuDemoTests/Info.plist;
461 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
462 | PRODUCT_NAME = "$(TARGET_NAME)";
463 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SlideZoomMenuDemo.app/SlideZoomMenuDemo";
464 | };
465 | name = Debug;
466 | };
467 | 5964B9E91AB6DED80013131F /* Release */ = {
468 | isa = XCBuildConfiguration;
469 | buildSettings = {
470 | BUNDLE_LOADER = "$(TEST_HOST)";
471 | FRAMEWORK_SEARCH_PATHS = (
472 | "$(SDKROOT)/Developer/Library/Frameworks",
473 | "$(inherited)",
474 | );
475 | INFOPLIST_FILE = SlideZoomMenuDemoTests/Info.plist;
476 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
477 | PRODUCT_NAME = "$(TARGET_NAME)";
478 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SlideZoomMenuDemo.app/SlideZoomMenuDemo";
479 | };
480 | name = Release;
481 | };
482 | /* End XCBuildConfiguration section */
483 |
484 | /* Begin XCConfigurationList section */
485 | 5964B9BC1AB6DED80013131F /* Build configuration list for PBXProject "SlideZoomMenuDemo" */ = {
486 | isa = XCConfigurationList;
487 | buildConfigurations = (
488 | 5964B9E21AB6DED80013131F /* Debug */,
489 | 5964B9E31AB6DED80013131F /* Release */,
490 | );
491 | defaultConfigurationIsVisible = 0;
492 | defaultConfigurationName = Release;
493 | };
494 | 5964B9E41AB6DED80013131F /* Build configuration list for PBXNativeTarget "SlideZoomMenuDemo" */ = {
495 | isa = XCConfigurationList;
496 | buildConfigurations = (
497 | 5964B9E51AB6DED80013131F /* Debug */,
498 | 5964B9E61AB6DED80013131F /* Release */,
499 | );
500 | defaultConfigurationIsVisible = 0;
501 | defaultConfigurationName = Release;
502 | };
503 | 5964B9E71AB6DED80013131F /* Build configuration list for PBXNativeTarget "SlideZoomMenuDemoTests" */ = {
504 | isa = XCConfigurationList;
505 | buildConfigurations = (
506 | 5964B9E81AB6DED80013131F /* Debug */,
507 | 5964B9E91AB6DED80013131F /* Release */,
508 | );
509 | defaultConfigurationIsVisible = 0;
510 | defaultConfigurationName = Release;
511 | };
512 | /* End XCConfigurationList section */
513 | };
514 | rootObject = 5964B9B91AB6DED80013131F /* Project object */;
515 | }
516 |
--------------------------------------------------------------------------------