zoukankan      html  css  js  c++  java
  • iOS抽屉效果

    源代码下载

    抽屉效果第三方类库下载

    所需第三方类库下载

    側拉栏抽屉效果图

            


    须要导入的头文件:

    #import "MMDrawerController.h"
    #import "MMExampleDrawerVisualStateManager.h"
    代码实现:

    首先须要创建三个试图控制器

    //主视图
        FirstViewController *firstVC = [[FirstViewController alloc] init];
        //左边视图
        SecondViewController *secondVC = [[SecondViewController alloc] init];
        //右边视图
        ThirdViewController *thirdVC = [[ThirdViewController alloc] init];
        
        CustomizedNavigationController *navigationVC = [[CustomizedNavigationController alloc] initWithRootViewController:firstVC];
        
        CustomizedNavigationController *leftNavigationVC = [[CustomizedNavigationController alloc] initWithRootViewController:secondVC];
    
        CustomizedNavigationController *rightNavigationVC = [[CustomizedNavigationController alloc] initWithRootViewController:thirdVC];
    
        //抽屉管理 第三方
        //该第三方既能够仅仅实现打开左側栏也能够实现打开右側栏,还能够同一时候都实现
        MMDrawerController *rooVC = [[MMDrawerController alloc] initWithCenterViewController:navigationVC leftDrawerViewController:leftNavigationVC rightDrawerViewController:rightNavigationVC];
        
        //仅仅实现打开左側栏
        //MMDrawerController *rooVCLeft = [[MMDrawerController alloc] initWithCenterViewController:navigationVC leftDrawerViewController:firstVC];
        //仅仅实现打开右側栏
        //MMDrawerController *rooVCRight = [[MMDrawerController alloc] initWithCenterViewController:navigationVC rightDrawerViewController:thirdVC];
        
        //指定window的根视图
        self.window.rootViewController = rooVC;
        //測了门的宽度
        [rooVC setMaximumLeftDrawerWidth:270];
        //设置側拉门开与关的动画
        [rooVC setOpenDrawerGestureModeMask:MMOpenDrawerGestureModeAll];
        [rooVC setCloseDrawerGestureModeMask:MMCloseDrawerGestureModeAll];
        //側开内容展示效果
        //设置向左滑动打开右側栏
        [[MMExampleDrawerVisualStateManager sharedManager] setRightDrawerAnimationType:MMDrawerAnimationTypeNone];
        //设置向右滑动打开左側栏
        [[MMExampleDrawerVisualStateManager sharedManager] setLeftDrawerAnimationType:MMDrawerAnimationTypeNone];
        
        [rooVC setDrawerVisualStateBlock:^(MMDrawerController *drawerController, MMDrawerSide drawerSide, CGFloat percentVisible) {
            MMDrawerControllerDrawerVisualStateBlock block;
            block = [[MMExampleDrawerVisualStateManager sharedManager]
                     drawerVisualStateBlockForDrawerSide:drawerSide];
            if(block){
                block(drawerController, drawerSide, percentVisible);
            }
    
        }];
    




  • 相关阅读:
    Java学习笔记8(面向对象3:接口)
    面向对象2(继承,抽象类)
    java学习笔记6(面向对象1:概念,private)
    排序方法-循环和数组练习
    ArrayList方法综合练习
    Eclipse的配置
    集合(ArrayList)简述
    java学习笔记5(方法)
    数据结构9——最小生成树
    数据结构8——图的遍历
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5391665.html
Copyright © 2011-2022 走看看