首先感谢董铂然博客园,鄙人收藏学习之用,如有朋友看到.有需要请直接前往董铂然博客园本文, 请点击查看原文

在公司项目新版本方案选择中,对主导航中要使用的抽屉效果进行了调研。主要原因是旧的项目中所用的库ECS评价不是很好。现对当下比较火的几大热门抽屉效果的第三方库进行了调研。代码全部选自github

一.RESideMenu

https://github.com/romaonthego/RESideMenu

    

4300个星

示例程序跑到30M,可能是因为里面有图片。

支持iOS7+

测试效果很好

优点:

1.里面的文件较少,不需要使用cocoapods即可运行。

2.里面自定义API也比较多,可以设置变小的抽屉效果或者不变小。

3.里面有两个事例程序,一个是纯手码,一个是Storyboard得。可见作者也非常喜欢IB开发,此框架用IB开发应该可以完美兼容。

4.可以使用手势拖来拖去。

5.项目里各个文件不需要继承,导入头文件就行。

缺点:

1.左边显示的菜单可选项是固定的几个button,暂时想把左边换成tableView还不知道可不可行。(现已解决,可以改)

2.不能实现状态栏右移.

3.暂时没找到两边控制器的占比怎么自定义。(现已解决,可以改)

二.Mutual Mobile Drawer Controller

https://github.com/mutualmobile/MMDrawerController

3100个星

示例程序内存跑到15M

iOS7+

测试效果屌爆了。

优点。

1.里面有9个文件比上面的略多。但也还凑合吧

2.虽然没有缩小抽屉的动画,但是在平向切入时,leftVC有几种转场动画可选。

3.左边已经是tableVIew。

4.自定义的接口挺多。

5.作者最近还在更新

缺点。

1.相比于上面的,这个项目是用纯手码写的。

2.现在有一个抽搐的小bug,不过感觉我应该能改好。

3.在设置左右占比时,用的是固定数值,这样的话4s和6的手机界面显示是不一样的。(应该能改成百分比)

4.依旧状态栏不能右移。

5.项目内各个文件需要继承工具类。

三.PPRevealSideViewController

https://github.com/ipup/PPRevealSideViewController

736星

iOS6+

测试效果一般。

优点:

1.支持iOS6

2.基本的自定义也都是支持的。

3.页面大部分是Storyboard搭建。

4.导入头文件,而不是继承。

缺点:

1.也是支持iOS6,导致界面始终控制的必须有一个黑条。并且在切换的时候太低端了。

2.除了自己的PPRSVC,还必须使用cocoapods依赖了另一个库,PPHelpMe。这个库有29个文件。

3.手势支持做的不怎么好,能拉出来但不能拉回去。

四.SWRevealViewController

https://github.com/John-Lluch/SWRevealViewController

    

2100星

非常干净的界面也没有图片,为什么内存会跑到28M?

iOS7+

测试的效果一般

优点:

1.使用的是导入头文件,而不是继承。

2.非常干净,基本只有核心功能,只有两个文件一个.h一个.m

3.可以实现三层抽屉。

4.支持手势的各种操作。

5.里面使用了不少xib文件。

6.左右占比控制的很好。

缺点:

1.能够自定义的接口不是很多。(但改源码的话应该也不会很难)

2.横屏时的屏幕适配需要再改进下。

2.貌似没有缺点了。

五.ECSlidingViewController (现在用的)

https://github.com/ECSlidingViewController/ECSlidingViewController

3500个星

支持iOS5

测试效果一般。

优点:

1.除了星多,貌似没有优点(和上面几个相比的话)

缺点:

1.用了13个文件,但是貌似只是实现了最基本的抽屉效果功能。

2.缩在右边时还向右边拉,会产生bug。

3.用的是继承。每个文件都要继承。

4.去年8月以后就停止更新了。

结果分析

暂时我更倾向于第一种,首先接口清晰,代码清晰,并且对项目的侵入性很小这事根本原因。目前也正在详细调研此库。

(如果有使用过上述库,有其他观点的欢迎指点)

 
 

抽屉效果几大github第三方库的更多相关文章

  1. 对抽屉效果几大github第三方库的调研

    在公司项目新版本方案选择中,对主导航中要使用的抽屉效果进行了调研.主要原因是旧的项目中所用的库ECS评价不是很好.现对当下比较火的几大热门抽屉效果的第三方库进行了调研.代码全部选自github 如果你 ...

  2. iOS详解MMDrawerController抽屉效果(一)

      提前说好,本文绝对不是教你如何使用MMDrawerController这个第三方库,因为那太多人写了 ,也太简单了.这篇文章主要带你分析MMDrawerController是怎么实现抽屉效果,明白 ...

  3. iOS側拉栏抽屉效果Demo

    源代码下载 側拉栏抽屉效果Demo  须要导入第三方的类库例如以下: 抽屉效果所需第三方类库下载 效果:既能够两側都实现抽屉效果也可仅仅实现左側栏或者右側栏的抽屉效果           waterm ...

  4. 【转】提示框第三方库之MBProgressHUD iOS toast效果 动态提示框效果

    原文网址:http://www.zhimengzhe.com/IOSkaifa/37910.html MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显 ...

  5. iOS常用的第三方库GitHub地址

    MJRefresh https://github.com/CoderMJLee/MJRefresh#期待 Facebook-POP https://github.com/facebook/pop /* ...

  6. iOS开发常用第三方库

    UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...

  7. IOS常用第三方库《转》

    UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...

  8. iOS 第三方库、插件、知名博客总结

    iOS 第三方库.插件.知名博客总结 用到的组件 1.通过CocoaPods安装 项目名称 项目信息 AFNetworking 网络请求组件 FMDB 本地数据库组件 SDWebImage 多个缩略图 ...

  9. iOS常用第三方库大全,史上最全第三方库收集

    下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITableVie ...

随机推荐

  1. Java编译时多态和运行时多态

    来源:https://blog.csdn.net/wendizhou/article/details/73733061 编译时多态:主要是方法的重载,通过参数列表的不同来区分不同的方法. 运行时多态: ...

  2. java spring bean的什么周期

    http://www.cnblogs.com/TIMHY/p/7794973.html

  3. Typechecking With PropTypes

    [Typechecking With PropTypes] 1.props类型检查 React has some built-in typechecking abilities. To run typ ...

  4. Jmeter(二十五)常见问题(转载)

    转载自 http://www.cnblogs.com/yangxia-test 收集工作中JMeter遇到的各种问题   1.  JMeter的工作原理是什么? 向服务器提交请求:从服务器取回请求返回 ...

  5. JMeter学习(二十四)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults(转载)

    转载自 http://www.cnblogs.com/yangxia-test Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager.HTTP Autho ...

  6. oracle存储过程与存储函数的区别和联系

    相同点:1.创建语法结构相似,都可以携带多个传入参数和传出参数.      2.都是一次编译,多次执行. 不同点:1.存储过程定义关键字用procedure,函数定义用function. 2.存储过程 ...

  7. Winform开发框架之简易工作流设计(转自 伍华聪博客)

    Winform开发框架之简易工作流设计 一讲到工作流,很多人第一反应就是这个东西很深奥,有时候又觉得离我们较为遥远,确实完善的工作流设计很多方面,而正是由于需要兼顾很多方面,一般通用的工作流都难做到尽 ...

  8. matomo 开源网站分析平台

    1.安装PHP https://www.jianshu.com/p/8d54a401ec06 yum remove php* yum -y install epel-release rpm -Uvh ...

  9. poj2912(带权并查集+枚举)

    题目链接:http://poj.org/problem?id=2912 题意:给n个人,m组关系,玩石头剪刀布的游戏,n个人中除一个人judge以外,其他人属于3个group(即石头.剪刀.布),他们 ...

  10. 连接SQL常见问题

    HTTP Status 500 – Internal Server Error Type Exception Report Message Request processing failed; nes ...