美文网首页
抽屉ViewDeck的简单使用

抽屉ViewDeck的简单使用

作者: XiaoBaa | 来源:发表于2017-09-03 10:15 被阅读180次

使用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, 屏高);

相关文章

  • 抽屉ViewDeck的简单使用

    使用pod导入三方库ViewDeck pod 'ViewDeck', '~> 3.1.0' 如设置左右视图的屏比例...

  • side menu

    使用 ViewDeck引入#import 需要将IIViewDeckC...

  • iOS 抽屉效果 ViewDeck

    抽屉效果目前比较有名的有第三方RESideMenu和MMDrawerController。但是项目要求抽屉效果为拉...

  • Swift-QQ最新版抽屉侧滑和弹框视图

    导读 简单用Swift写了一个抽屉效果,可以直接使用并且简单;很多软件都运了抽屉效果,比如qq的左抽屉,英雄联盟,...

  • Android界面工具库

    1.AndroidSlidingUpPanel上拉抽屉控件 具体简单使用 2.FloatWindowAndorid...

  • iOS使用viewdeck实现android navigatio

    Android有一个navigation drawer布局,可以实现从左侧滑出一个页面,覆盖大约一半当前页面。目前...

  • iOS 侧滑

    ViewDeck 左右侧滑控件 MSDynamicsDrawerViewController iOS7 动态弹...

  • 简单的抽屉效果

    先看下效果 1:新建一个项目,名字随便起,在项目下新建一个实体文件夹,这个文件件就是存放封装好的抽屉效果类(只有两...

  • 可折叠的ToolBar+抽屉菜单NavigationView+浮

    使用Material Design风格的ToolBar和抽屉导航 先看个简单的运行效果 主要记录下布局的写法 1 ...

  • 简单抽屉效果的实现

    一个简单的抽屉效果分享给大家,提供详细的源码下载,供新手小伙伴学习参考。 第一步:搭建界面。 (void)view...

网友评论

      本文标题:抽屉ViewDeck的简单使用

      本文链接:https://www.haomeiwen.com/subject/davdjxtx.html