美文网首页iOS&Xcode奇技淫巧程序员iOS
(二)自己动手写代码之PZSlideMenu

(二)自己动手写代码之PZSlideMenu

作者: ParkinWu | 来源:发表于2015-04-30 14:02 被阅读6186次

    简述

    最近项目中用到一个抽屉效果,尝试自己写了一个,将过程记录下来, 有新需求改起来非常方便。我先实现最基本的功能。


    效果图效果图

    图片比较糙,冷汗...

    源代码

    github源代码

    功能

    一个抽屉效果

    • 1.能过管理多个ViewController
    • 2.支持滑动手势

    使用方法

        RootViewController * rootVC = [[RootViewController alloc] init];
        SecondViewController * secondVC = [[SecondViewController alloc] init];
        LeftViewController * leftVC = [[LeftViewController alloc] init];
        PZSlideMenu * menu = [[PZSlideMenu alloc] initWithLeftVC:leftVC viewControllers:@[rootVC, secondVC]];
    
    //    menu.openOffset = 180;
    //    menu.scale = 0.7;
        self.window.rootViewController = menu;
    

    方法介绍

    /**
     @ 所管理的viewControllers
     */
    @property (nonatomic, strong) NSArray * viewControllers;
    /**
     @ 抽屉打开的最大距离,默认150;
     */
    @property (nonatomic, assign) CGFloat openOffset;
    /**
     @ 当打开菜单时,内容页缩放为原来的百分比,(0.5-1)
     @ 默认为0.85
     */
    @property (nonatomic, assign) CGFloat scale;
    /**
     @ 当前打开的ViewController序列
     */
    @property (nonatomic, readonly, assign) NSInteger currentOpenedIndex;
    /**
     @ 是否打开leftVC
     */
    @property (nonatomic, assign) BOOL isOpened;
    + (instancetype)shareInstance;
    /**
     @ 初始化
     @ leftVC:左侧菜单
     @ VCs:被管理的controllers,NSArray
     */
    - (instancetype)initWithLeftVC:(UIViewController *)leftVC viewControllers:(NSArray *)VCs;
    /**
     @ 打开菜单
     */
    - (void)showLeftMenu;
    /**
     @ 关闭菜单
     */
    - (void)closeLeftMenu;
    /**
     @ 切换到第几个controller
     */
    - (void)openViewControllerAtIndex:(NSInteger)index;
    

    相关文章

      网友评论

      本文标题:(二)自己动手写代码之PZSlideMenu

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