• iOS 知识点大总结(转)


    http://www.jianshu.com/p/b7c4a787a597

    前言

    Github众所周知,全球最大的同性社区交友网站,在这里你可以获取任何你想要的,只要你想,只要Ta有。
    从事开发几年在Github上Star了不少好的东西,当然学到了更多,在此深深的膜拜下那些开源的大神。
    切入正题,下面对自己使用过或者Star过的第三方框架整理下,便于日后查阅,也方便他人借鉴,如果大家有什么好的库推荐,欢迎在本文下方评论,本篇文章不定时更新...

    戳这里----->已上传Github at 2016.01.01


    他人整理开源组件列表

    awesome-ios<----点开有惊喜

    Awesome-Swift-Education<----点开有惊喜

    TimLiu-iOS<----点开有惊喜

    iOS第三方库列表<----点开有惊喜


    iOS学习资源


    苹果AppStore被拒理由大全<----点开有惊喜


    开源项目源码

    个人认为,多阅读优秀的源码,对自己的水平提升还是很有帮助的,三人行必有我师


    APP相关

    • iRate

      想 要在App Store中获得更多评论的最佳方式是什么?想要回答这个问题,我缺乏切实数据,但如果必须猜一下的话,我会建议问问用户。也许这样做有点老套——大多开 发者现在都有创建定制的应用内置alert。但是如果你没有时间,或者不想从头实现的话,最好用一下iRata。这个就是iRata——一个小型库——你 可以把它放入项目中,把问卷调查什么的都忘记吧,iRate会在恰当的时候为你解决这个问题。

    • appirate

      同样是提醒用户为APP评分

    • UAAppReviewManager

      还是提醒用户评分

    • iVersion

      提示版本更新

    • Instructions

      操作指引框架 Swift编写

    • Onboard

      启动导航界面,很方便的集成

    • CoreLaunch

      启动界面进入主画面动画

    • BonMot

      字体相关的库,设置字体样式

    • FontAwesomeKit

      FontAwesomeKit 提供一些简单的助手类用来帮助在 iOS 上使用 FontAwesome

    • Bugtags

      收集崩溃日志,用户操作信息等,解决线上崩溃问题的神器

    • JMHoledView

      首次启动APP的新手指引

    • PermissionScope

      用这个库可以在询问用户前,就告知用户所需的系统权限,为用户带来更好的体验。接受度更高—>更多活跃用户->更高的留存率->数据更好->下载率更高

    • Presentation

      swift下会动的启动页。

    自动布局

    • Masonry

      自动布局

    • PureLayout

      自动布局

    • SnapKit

      Swift布局框架 在代码中纯手工创建约束灰常痛苦,但幸运的是我们有了SnapKit,在board中用上它,你可以简单直观地编写约束了

    网络请求

    • AFNetworking

      网络请求 应该不会没人用过吧

    • Alamofire

      Alamofire是一个简洁的网络库,用Swift语言编写。你是否曾经使用过AFNetworking呢?Alamofire是它的小弟。更年轻更时尚,当然(AFNetworking是用Objective-C编写的)

    • CocoaAsyncSocket

      无疑是目前封装得最完善的Socket库了:支持异步TCP/UDP,支持GCD,Objective-C接口封装。。目前没有发现可以与之相比的同类产品

    • RxAlamofire

      对 Alamofire的封装,很是强大

    基础工具类以及Category

    • sstoolkit

      一个不错的工具包,提供各种比如编码、加密、字符串处理等等东西,还提供了一些不错的自定义控件,并且文档非常齐全

    • BFKit OC版本
    • BFKit Swift版本

      国外的一个大神写的很好用的分类,比较齐全

    • YYKit

      最近很火的YY大神,应该不用多介绍了吧

    • BlocksKit

      为基础类提供Block支持,很好用

    • DateTools

      很强大的日期工具类

    • FlatUIKit

      针对Foundation的扩展

    • iOS-Categories

      很 是全面的一个扩展 iOS中的各种Objective-C Category, a collection of useful Objective-C Categories extending iOS Frameworks such as Foundation,UIKit,CoreData,QuartzCore,CoreLocation,MapKit Etc.

    • RENCache

      简单方便的缓存

    • RNCachingURLProtocol

      webView 离线缓存库 好用

    • PinYin4Objc

      拼音解析,很好用

    • ZipArchive

      解压缩

    • Chameleon

      Chameleon是一个iOS的色彩框架。它运用现代化flat color将UIColor扩展地非常美观。我们还可以通过它运用自定义颜色创建调色板。它还有很多功用,请浏览readme。如果你想要应用美观的话,一定要把这个库加到项目里。

    • CYLTabBarController

      很方便集成的tabBarController框架

    • RKNotificationHub

      展示通知图标

    • Material-Controls-For-iOS

      大神模仿谷歌做的iOS原生特效控件

    弹出框

    动画

    文本相关

    • DTCoreText
    • [M80AttributedLabel]
      (https://github.com/xiangwangfeng/M80AttributedLabel/)

      富文本demo

    • TTTAttributedLabel

      很强大的Label,使用人数较多

    • SlackTextViewController

      你 曾经用过Slack iOS应用吗?如果你在较大的软件公司工作,也许会用过。对那些没用过的人呢?—?Slack令人激动。用到Slack的应用也是这样,尤其是用作极佳、 定制的文本输入控制时。这时你有了一个现成可用在应用中的代码。自适应文本区域?试一下。手势识别、自动填充、多媒体合并?试一下。快速drop-in解 决方案?试一下。其他还想要什么?SlackTextViewController 可以替代 UITableViewController & UICollectionViewController。

    • RTLabel

      展示HTML的label

    • (Shimmer)[https://github.com/facebook/Shimmer]

      Facebook出品

    • CSGrowingTextView

      文本框会随着输入字数改变高度

    • LTMorphingLabel

      效果非常炫的文本框

    • TextFieldEffects

      动效不错,23333

    • DDRichText

      为图文混排提供了一个思路

    • BMLine

      便捷的为你的view 添加线条。。。。简直福利啊

    加载进度条

    键盘类

    抽屉

    NavigationBar

    ScrollView相关

    • SwipeView

      nicklockwood 大神出品

    • SWTableViewCell

      自定义cell侧滑

    • MGSwipeTableCell

      这是另一个常见于很多应用中的UI组件,苹果应该考虑在标准的iOS SDK中加入一些类似的内容。Swipeable表格cell是这个pod的最佳描述,也是最好的。

    • CHTCollectionViewWaterfallLayout

      瀑布流学习demo

    • FDFullscreenPopGesture

      很方便的集成全屏返回上一层界面

    • PDTSimpleCalendar

      一款日历控件,可以看看

    • DZNEmptyDataSet

      DZNEmptyDataSet UITableView/UICollectionView 超类,当视图没有内容的时候用来展示空数据集。DXNEmptyDataSet 能自动工作,只需要确认 DZNEmptyDataSetSource 和用户需要返回的数据。

    • WMPageController

      WMPageController
      是一个方便形成如同网易新闻首页,控制器滑动翻页效果的控制器

    • TYSlidePageScrollView

      多种样式的界面复用

    MJ系列

    Json解析

    • Reflect

      swift下模型解析

      .类反射
      [](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一键字典转模型).一键字典转模型
      [](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一键模型转字典).一键模型转字典
      [](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一键plist转模型).一键plist转模型
      [](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一键归档).一键归档

    数据库

    • realm

      据说很强大,还没用过,有时间研究下

    • fmdb

      基本项目中使用的都是这个,支持多线程操作,不错

    图表库

    框架相关

    • ReactiveCocoa

      ReactiveCocoa(简称为RAC
      ),是由Github开源的一个应用于iOS和OS开发的新框 架,Cocoa是苹果整套框架的简称,因此很多苹果框架喜欢以Cocoa结尾。在我们iOS开发过程中,经常会响应某些事件来处理某些业务逻辑,例如按钮 的点击,上下拉刷新,网络请求,属性的变化(通过KVO)或者用户位置的变化(通过CoreLocation)。但是这些事件都用不同的方式来处理,比如 action、delegate、KVO、callback等。
      其实这些事件,都可以通过RAC处理,ReactiveCocoa为事件提供了很多处理方法,而且利用RAC处理事件很方便,可以把要处理的事情,和监听的事情的代码放在一起,这样非常方便我们管理,就不需要跳到对应的方法里。非常符合我们开发中高聚合,低耦合的思想。

    • JSPatch

      使用JavaScript调用任何Objective-C的原生接口,获得脚本语言的能力:动态更新APP,替换项目原生代码修复bug

    • nimbus

      nimbus iOS框架 three20停止更新后的替代品

    • BeeFramework是一款iOS平台的MVC应用快速开发框架,使用Objective-C开发。 其早期原型曾经被应用在QQ空间 、QQ游戏大厅 等多款精品APP中。 BeeFramework 从根本上解决了iOS开发者长期困扰的各种问题,诸如:分层架构如何设计,层与层之间消息传递与处理,网络操作及缓存,异步及多线程,以及适配产品多变的 UI布局需求。

    • WebViewJavascriptBridge

      如果你需要JS和原生交互,那么就使用他吧

    图片处理以及展示相关

    • GPUImage

      GPUImage 是一个基于GPU图像和视频处理的开源iOS框架,提供各种各样的图像处理滤镜,并且支持照相机和摄像机的实时滤镜; 基于GPU的图像加速,因此可以加速对实时摄像头视频、电影以及image的滤镜和其它效果处理,并且能够自定义图像滤镜。另外, GPUImage支持ARC

    • FXBlurView

      背景模糊

    • IDMPhotoBrowser

      图片浏览器,非常好用

    • AGImagePickerController

      相册选择

    • DNImagePicker

      类似微信的图片选择器

    • JFImagePickerController

      效果不错的

    • Nuke

      swift下图片处理库

    音频/视频

    • KRVideoPlayer

      36氪开源的视频播放器

    • DOUAudioStreamer

      豆瓣开源 DOUAudioStreamer 是 iOS 和 Mac 的基于核心音频的流媒体音频播放器。

    • FreeStreamer

      效 率很高、所占内存很小的在线流媒体(Audio Stream)播放引擎,支持 ShoutCast 和 IceCast 流媒体协议,以及可以暂停和恢复播放。具体具备以下特色:1. 效率很高,占用内存很小(虽然是核心代码是C ,但是OBJ调用没有额外性能消耗);2. 支持 ShoutCast 和 IceCast 流媒体协议,以及标准的 HTTP 传输协议;3. 可以检测流媒体的格式;4. 支持 ShoutCast metadata5. 支持暂停和恢复流媒体播放;6. 支持背景播放;7. 支持 ID3v2;8. 支持 Podcast RSS feeds

    • ESTMusicPlayer

      PHPHub开源播放器,默默点个赞

    • VKVideoPlayer

      可定制性比较高的播放器

    内购/推广

    • IAPHelper

      应用内付费给我们提供了很多样本代码,而这个库丢掉了那些代码,将金钱交易相关的大多通用任务做了简单的封装。

    • DAAppsViewController

      应用推广界面,填写合作app的appleId即可

    • TAPromotee

      交叉推广应用是你可以免费实现的最佳市场推广策略之一。使用这个库做起来非常简单,不用都不可能——将TAPromotee加入你的podfile中,免费配置与享受更多下载吧。

    IM相关

    • MessageDisplayKit

      用于聊天App显示消息的页面,可以发送文本、声音、图片、视频等消息(不过目前的Demo似乎仅支持输入文本)。界面模仿微信App。

    • JSQMessagesViewController

      很强大的消息界面UI库

    存储相关

    • sskeychain

      便捷的使用keyChain存储用户名密码等


    Tip


    学习的路上总是曲折的,每个人都是从菜鸟过来的,遇到问题总是希望能够与他人沟通交流,而在各种群里问了问题就石沉大海,所以想建一个技术交流为主的群,遇到的问题可以记录下来分享给他人,方便了自己,也造就了他人,不管怎样,记录点滴,但愿与君共勉

    QQ群号:527377492

  • 相关阅读:
    Hive 显示指定mapjoin,写法比较独特
    【Task】MySQL查看表状态命令 以及MYSQL ROW-FORMAT了解一下
    Java Map中key用可变对象会是什么后果?
    typora比较好用的markdown文档编辑器
    Sharding-JDBC是一个开源的适用于微服务的分布式数据访问基础类库,了解学习一下
    POJO与JavaBean的区别
    XML概述
    linux---安装apache
    linux基础命令练习题
    nfs网络共享和linux的进程管理
  • 原文地址:https://www.cnblogs.com/shiguangji728/p/5162352.html
Copyright © 2020-2023  润新知