使用pod导入三方库ViewDeck
pod 'ViewDeck', '~> 3.1.0'
// QYHViewDeck.h
#import <Foundation/Foundation.h>
#import <ViewDeck/ViewDeck.h>
@interface QYHViewDeck : NSObject <IIViewDeckControllerDelegate>
@property (nonatomic, strong) IIViewDeckController *viewDeckController;
+ (instancetype)sharedInstance;
- (IIViewDeckController *)wrappedViewDeckController;
+ (void)openDeck;
+ (void)closeDeck;
@end
// QYHViewDeck.m
#import "QYHViewDeck.h"
@implementation QYHViewDeck
+ (instancetype)sharedInstance {
static QYHViewDeck *viewDeckControllerWrapping = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
viewDeckControllerWrapping = [[QYHViewDeck alloc] init];
});
return viewDeckControllerWrapping;
}
- (IIViewDeckController *)wrappedViewDeckController {
self.viewDeckController = [[IIViewDeckController alloc] init];
self.viewDeckController.centerViewController = [self createCenterViewController];
self.viewDeckController.leftViewController = [self createLeftSideViewController];
self.viewDeckController.rightViewController = [self createRightSideViewController];
self.viewDeckController.panningEnabled = YES; //侧滑手势
self.viewDeckController.delegate = self;
return self.viewDeckController ;
}
+ (void)openDeck {
IIViewDeckController *viewDeckController = [QYHViewDeck sharedInstance].viewDeckController;
if (viewDeckController.openSide == IIViewDeckSideNone) {
[viewDeckController openSide:IIViewDeckSideLeft animated:YES];
}
}
+ (void)closeDeck {
IIViewDeckController *viewDeckController = [QYHViewDeck sharedInstance].viewDeckController;
if (viewDeckController.openSide != IIViewDeckSideNone) {
[viewDeckController closeSide:YES];
}
}
#pragma mark - IIViewDeckControllerDelegate
- (void)viewDeckController:(IIViewDeckController *)viewDeckController didOpenSide:(IIViewDeckSide)side {
NSLog(@"viewDeckController--didOpenSide");
}
- (void)viewDeckController:(IIViewDeckController *)viewDeckController didCloseSide:(IIViewDeckSide)side {
NSLog(@"viewDeckController--didCloseSide");
}
#pragma mark - Private Methods
- (UIViewController *)createCenterViewController {
//TODO : 创建中间的视图
}
- (UIViewController *)createLeftSideViewController {
//TODO : 创建左边的视图
}
- (UIViewController *)createRightSideViewController {
//TODO : 创建右边的视图
}
@end
如设置左右视图的屏比例系数为0.7:
viewController.preferredContentSize = CGSizeMake(屏宽*0.7, 屏高);
网友评论