对抽屉效果几大github第三方库的调研
在公司项目新版本方案选择中,对主导航中要使用的抽屉效果进行了调研。主要原因是旧的项目中所用的库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第三方库的调研的更多相关文章
- 抽屉效果几大github第三方库
首先感谢董铂然博客园,鄙人收藏学习之用,如有朋友看到.有需要请直接前往董铂然博客园本文, 请点击查看原文 在公司项目新版本方案选择中,对主导航中要使用的抽屉效果进行了调研.主要原因是旧的项目中所用的库 ...
- iOS详解MMDrawerController抽屉效果(一)
提前说好,本文绝对不是教你如何使用MMDrawerController这个第三方库,因为那太多人写了 ,也太简单了.这篇文章主要带你分析MMDrawerController是怎么实现抽屉效果,明白 ...
- iOS側拉栏抽屉效果Demo
源代码下载 側拉栏抽屉效果Demo 须要导入第三方的类库例如以下: 抽屉效果所需第三方类库下载 效果:既能够两側都实现抽屉效果也可仅仅实现左側栏或者右側栏的抽屉效果 waterm ...
- 【转】提示框第三方库之MBProgressHUD iOS toast效果 动态提示框效果
原文网址:http://www.zhimengzhe.com/IOSkaifa/37910.html MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单.方便,并且可以对显 ...
- iOS常用的第三方库GitHub地址
MJRefresh https://github.com/CoderMJLee/MJRefresh#期待 Facebook-POP https://github.com/facebook/pop /* ...
- iOS开发常用第三方库
UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...
- IOS常用第三方库《转》
UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...
- iOS 第三方库、插件、知名博客总结
iOS 第三方库.插件.知名博客总结 用到的组件 1.通过CocoaPods安装 项目名称 项目信息 AFNetworking 网络请求组件 FMDB 本地数据库组件 SDWebImage 多个缩略图 ...
- iOS常用第三方库大全,史上最全第三方库收集
下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITableVie ...
随机推荐
- 微信开发之.Net
撸主是一个新手,最近几天在研究微信服务号交互,上网搜了搜C#的代码,再结合自己的习惯,下面把代码解析一下,其中有些代码非本人原创. 首先,你要有个公众服务号,只有服务号才可以自定义菜单,没有条件的可以 ...
- MVC中Action参数绑定的过程
一.题外话 上一篇:MVC中Action的执行过程 ControllerContext 封装有了与指定的 RouteBase 和 ControllerBase 实例匹配的 HTTP 请求的信息. 二. ...
- Moon转告给你一个比Log4net更好日志框架--TracerX Logger 及其对应的日志查看器
一.介绍 TracerX logger是一个易于上手,且拥有众多高级特性的.NET日志框架. 它能够发送输出结果到多目的地(循环文件.事件日志等....).它也能生成文本和二进制文件.它拥有一个强大的 ...
- Android SDK Manager国内更新代理
在Android SDK Manager Setting 窗口设置HTTP Proxy server和HTTP Proxy Port这个2个参数,分别设置为: HTTP Proxy server:mi ...
- 【iOS】desctiption和debugDescription
一.简介 与.NET一样,在.NET上得Object对象有个ToString()方法可以用于输出对象的信息,在iOS上的NSObject也有一个方法,为description,该方法返回objc对象的 ...
- QTableWidget详解(样式、右键菜单、表头塌陷、多选等) 2013-10-23 10:54:04
一.设置表单样式 点击(此处)折叠或打开 table_widget->setColumnCount(4); //设置列数 table_widget->horizontalHeader()- ...
- C#再识委托
从C#1到C#3逐步认识委托,由于C#4与C#5对委托改动并不大,故不作说明. 好久没看.NET了,一直在搞HybridAPP,都忘得差不多了,这也是自己从书中摘下笔迹,供日后翻阅. C# 1 1.什 ...
- Java总结篇系列:java.lang.Object
从本篇开始,将对Java中各知识点进行一次具体总结,以便对以往的Java知识进行一次回顾,同时在总结的过程中加深对Java的理解. Java作为一个庞大的知识体系,涉及到的知识点繁多,本文将从Java ...
- MVC之前的那点事儿系列(1):进入CLR
MVC之前的那点事儿系列,是笔者在2012年初阅读MVC3源码的时候整理的,主要讲述的是从HTTP请求道进入MVCHandler之前的内容,包括了原创,翻译,转载,整理等各类型文章,当然也参考了博客园 ...
- luogg_java学习_02_基本语法
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 关键字 定义:被java语言赋予了特殊含义,用作专门用 ...