iOS第三方总结

iOS总结

1.网络封装, 各种加载效果,实现界面先要考虑刷新加载

2.自定义控件坐标用父坐标来写,不要写死

3.baseviewcontroller  让所有viewcontroller都继承于它, 在里面进行统一操作,如全局通知(每次从后台进来后都刷新数据)

4.刷新加载在网络请求failer中停止

5.占位图要提前设计好多套(1)头像 (2)正方形(3)不规则图形(4);

6.类的集成,夜间模式  uitableviewcell

7.新建工程注意事项(1)修改网络设置,支持https  (2)

8.证书失效,删除DRCA过期证书,重新下载https://developer.apple.com/certificationauthority/AppleWWDRCA.cer  删除旧的开发证书,重新生成并下载,运行app  遇到错误提示点击reset证书

9.使用GPS需要一份免责声明放到app描述里面, 具体可以参考百度地图  可在价格与销售范围内设置国外上架,以及收费情况

10..#if DEBUG#endif 调试判断,打印输出宏定义

11.白名单

* 国际化  "REMIND"="提示"; 使用时 str = NSLocalizedString(@"REMIND", nil)  http://my.oschina.net/leejan97/blog/284372

* 单元测试 //www.greatytc.com/p/8bbec078cabe  单元测试介绍

* - (void)didReceiveMemoryWarning  考虑是否创建一个基类,把类的通用特性写好

15. iOS 10 开发适配系列 之 相机相册权限Crash问题  调用系统功能添加权限(蓝牙,电话簿) 有不闪退的在打包时也可能失败

* 字体库,需要用到的字体格式, 专门创建一个字体类

17.修改状态栏的名称 需要设置plist文件 View controller-based status bar appearance

18.启动页  需要图片比例

//www.greatytc.com/p/4f083431d5d5

http://www.cnblogs.com/BK-12345/p/5218229.html

19.打包的过程中上传ipa文件的时候有双击不能点击导入,点击导入会获取不到文件

20.调用系统相机相册显示英文在 Info.plist 中添加Localized resources can be mixed  localization native development region

21.weakself  strongself 的使用(用新的方法)

22.所有网络请求的接口字符串单独定义一个宏

23. 字号颜色创建宏,提前讲好大标题小标题字号

描述文件保存地址

~/Library/MobileDevice/Provisioning Profiles

测试用例

1.编号 2.场景 3.描述/操作 4.期望结果 5.真实结果

【链接】officeformac2011简体中文免费完整版

http://www.newasp.net/soft/110888.html

Charles  抓包工具  可使用代理服务器抓post  不支持Socket  支持https

cmd - ipconfig命令查看自己电脑的ip地址

+ UIActionSheet

+ UIActivityIndicatorView

+ UIAlertView

+ UIButton

+ UIDatePicker

+ UIImageView

+ UIPageControl

+ UIPickerView

+ UIProgressView

+ UISegmentedControl

+ UISlider

+ UIStepper

+ UISwitch

+ UITextField

+ UITextView

+ UIWebView

+ UISearchBar

+ UIToolbar

NSPredicate  用于描述对象持久性存储在内存中的对象过滤http://www.cocoachina.com/ios/20160111/14926.html

iOS剪切板 UIPasteboard

主流第三方

****CocoaLumberjack  iOS开源项目之日志框架CocoaLumberjack

AsyncDisplayKit    asdk facebook开源的高性能布局框架

*****FMDB                                      数据库的封装

*****Masonry                                自适应布局

*****MBprogressHUD                  加载框,进度条

Reachability                        网络判断

瀑布流横向与纵向

PLCollectionViewWaterfallLayout-master

CHTCollectionViewWaterfallLayout-develop

Web view处理

RxWebViewController      类似微信的web导航效果

NJKWebviewProgress

TOWebViewController    跳到新的web不用离开当前的界面

WebViewJavascriptBridge    JS与OC混编

导航栏

JZNavigationExtension      左滑返回,改变导航栏透明度

LTNavigationBar

*****FDFullscreenPopGesture  左滑返回手势

CWStatusBarNotification  状态栏通知

JDStatusBarNotification    网易状态栏通知

WMPageController-master  新闻类首页滑动查看

CRGradientNavigationBar    可以设置颜色渐变的导航栏

侧边栏

LeftSlide-master            仿qq左侧边栏(将mainController中的Navigation去掉,不然会影响其他navi的设置)

*****RESideMenu                  两边抽屉最火的

WWSideslipViewController-master    双侧边栏

SWRevealViewController-master

tabbar

RDVTabBarController    自定义tabbar

FancyTabBar                      点击按钮出来多个按钮动画特效

CYLTabBarController    很好用tabbar,可以自定义多种样式

字典模型互转框架

*****MJExtension

*****jsonModel

Mantle

YYKit                                      图文混排各种框架

BlocksKit                              快速编码

报表

*****PNChart                                数据报表 环形图  饼图 柱状图

SHLineGraphView            专业的数据报表

FSLineChart                        另一种风格的数据报表

Charts                                  也是一个数据报表,7.3运行

EChars      iOS-Echarts    百度的特别强大图标,数据统计,地图分布

MLMProgressCollection    仪表盘

加密

AESCrypt                              AES加密

*****GTMBase64                        各种加密

CocoaSecurity                  md5 base64 加密封装

动画

*****Shimmer-master                FB出的闪亮效果,常用于加载

pop                                        FB动画

TBIconTransitionKit          点击按钮动画变化效果  可定制

VCTransitionsLibrary          自定义iOS交互式转场动画的库  模态,tabor等

Canvas                              图片显示动画

XTAnimations            烟花跑马灯

*****    菜单弹出动画

数据显示

UICountingLabel                数字快速变化的label

*****TTTAttributedLabel            富文本

DTCoreText                        富文本处理  (HTML处理)

MarqueeLabel                  跑马灯

DZNEmptyDataSet        当数据为空时显示界面

waver                                根据声音大小显示振幅表

SlackTextViewController  输入框自增长文本域。手势识别,自动填充,多媒体粘贴(有swift版)

Toast                提示框

视图

FXBlurView                          添加毛玻璃效果的view

RCHGestureGuide          手势提示

TOCropViewController  裁剪图片

轮播器

SDCycleScrollView          图片轮播器

XLPhotoBrowser      相册浏览 图片轮播器

*****iCarousel                              类似网易云课堂顶部轮播

TinderSimpleSwipeCards      探探首页滑动效果

MDCSwipeToChoose  探探翻牌子

*****SWTableViewCell              左右滑动并且脱出好多按钮的tableviewcell

*****MGSwipeTableCell        也是滑动

RACollectionViewReorderableTripletLayout    可拖拽的collectionView

UITableView-FDTemplateLayoutCell  自适应cell的高度

FDTemplateLayoutCell  自适应cell高度

UITableViewCell+HYBMasonryAutoCellHeight

DACircularProgressView

DDProgressView

RETableViewManager    tableview管理

键盘自适应高度

TPKeyboardAvoiding          自动适配键盘高度

IQKeyboardManager]          键盘管理

UUChatTableView              聊天界面

MMPopupView                alerter 提示框

WCAlertView                      自定义颜色,可以加输入框

JMHoledView

TitlePagerView

音频视频

kxmovie                          视频播放 直播流

ffmpeg                            记录、转换数字音频、视频

wmplayer                      视频播放器第三方

ijkplayer  基于FFmpeg的跨平台播放器

520Linkee  直播App 视频流采集、播放、美颜、礼物、点赞出心 融合了不少功能

STLBGVideo  登陆背景视频

刷新控件

SVPullToRefresh                  常用的刷新加载控件(淘宝)

YiRefresh

ODRefreshControl            类似qq的刷新

EGOTableViewPullRefresh  网易

图片处理

TKImageView 用来裁剪照片

UIImage-Resize 用来缩放图片

uiimage-from-animated-gif 用来显示加载动画

GPUImage                          图片滤镜

MWPhotoBrowser              图片选择器

IDMPhotoBrowser

TZImagePickerController  图片选择器,好用的

SCRecorder              相机操作

YQImageTool    图片裁剪旋转

TOCropViewController    裁剪图片

GPUImage                          图片滤镜

BeautifyFace  快速的实现美颜功能 基于GPUImage

色彩 颜色渐变跑马灯

Wonderful

Chameleon    各种扁平化颜色框架

时间处理

PDTSimpleCalendar      日历

DateTools                          日期的显示,以及时间的各种比较计算

FSCalendar  完全可定制的 iOS 日历库,兼容 Objective-C 和 Swift 。

搜索

PYSearch-master        搜索框 搜索记录

APP优化

DAAppsViewController  应用推广界面,填写合作appid即可

appirater-master            提示用户给app评分

iVersion                              版本提示更新

JSPatch                              热更新,修复上线app的bug

fespinner                            loading 网络请求各种动画加载效果

RHAddressBook-master  访问通讯录

Aspects                                runtime封装,给系统方法添加代码 http://tech.glowing.com/cn/method-swizzling-aop/

PermissionScope          提示系统许可

TAPromotee                    推销app

IAPHelper                        应用内购买 (使用时提前了解iap的坑)

XHLaunchAd 3.0        开屏广告https://github.com/CoderZhuXH/XHLaunchAd

github最热的

MagicalRecord                    core data的封装

JSQMessagesViewController  类似于苹果短信

Alcatraz                                好用的插件管理工具,类似cocopod ,安装介绍(http://blog.csdn.net/sharpyl/article/details/50682139)

CocoaLumberjack        控制台输出颜色

SlackTextViewController    文字输入解决方案

FLEX                                一个在应用程序的调试和探测工具为iOS版

ZipArchive  可用于压缩和解压缩文件

*****SSKeychain  支持对存储在钥匙串中密码、账户进行访问,

RegexKitLite    用来处理正则表达式

GTMNSString+HTML      谷歌开源的用于过滤HTML标签

CocoaAsyncSocket    Socket 最好的封装

PonyDebugger    调试工具,远程调试iOS程序、查看试图层次、网络

CocoaLumberjack      Log工具

FontAwesomeKit        轻松添加字体

FontBlaster              在app里加载自定义字体更简单。

OpenUDID                  生成设备唯一标识符  (不能用了)

SAMKeychain              存取钥匙串

Valet                          存取钥匙串

IGListKit    快速灵活列表的数据驱动型的 UICollectionView 框架

STAlertView                第三方的弹出输入框

photokit                    获取图片信息

firebase analytics    谷歌的用户统计

DZNEmptyDataset    显示空数据时的界面

DeviceKit        获取设备信息和电池电量

Quick          测试框架

GDPerformanceView  测试使用显示内存等信息

Chameleon    iOS 颜色框架软件。

Ensembles  设备之间移动文件支持swift

AsyncDisplayKit  ADK facebook开源的异步UI SDK

DAKeyboardControl    输入框里面加view

charles            抓包工具

非知名但实用

YZPullDownMenuDemo  快速继承搜索界面下拉菜单

MYDropMenu        上拉下拉菜单

MCLeftSilder    侧滑栏,还有黑夜效果,以及程序启动时的广告页

FJMongoliaView            首次下载提示的蒙层

UniversalProject        app创建的框架以及常用的功能

BAPickView-master    日期地址选择器

EBForeNotification  在 App 处于前台时展示跟系统完全一样的推送弹窗和声音。获取推送内容,并处理点击事件

iOSInterviewQuestions  iOS面试题

iOS-Source-Code-Analyze  iOS开源框架解析

UniversalProject-master 一个好的app框架

推送相关

https://github.com/pinping/IOS-The-tutorial

https://github.com/pinping/IOS-The-tutorial/blob/master/iOS推送总结.md

好多用法

https://hit-alibaba.github.io/interview/

swift

Swift30Projects.    30个swift开源

http://www.cocoachina.com/swift/20150126/11016.html  开源项目精选

SnapKit

Snap、        自适应布局

Kingfisher、加载图片

DominantColor  提取图片主色

gifu              gif显示类库

Fabric

Alamofire:著名的AFNetworking网络基础库Swift版

SwiftyJSON:最为开发者认可的JSON解析类

kingfisher    异步下载缓存图片

SQLite.swift:简单、轻量,使用上最SQL的SQLite封装库

realm              移动数据库

SugarRecord:基于CoreData与REALM的好用封装

SweetAlert:带动画效果弹窗封装类

RAMAnimatedTabBarController:

PNChart-Swift:带动画效果的图表控件库

Cartography:用代码解决麻烦的AutoLayout

LTMorphingLabel:各种文字动画效果

SwiftSafe      并发情况下的数据存取

SVProgressHUD

FDFullscreenPopGesture

PathKit    路径管理类

LocationManager  地理位置管理封装库

XCGLogger  日志管理类库

Siren              提示应用更新

CryptoSwift  加密库  MD5 sha1,sha224,sha256(跟md5加密类似)

PeekPop    可以很方便地使用3D touch来预览内容。

PromiseKit  异步编程类库

EZSwiftExtensions  对Swift标准库, Foundation, UIKit 提供了很多高级扩展函数

PermissionScope    权限管理库 提供申请权限授权操作

IQKeyboardManagerSwift  键盘自适应高度

ZZImagePicker  调用相机相册

FileKit                  文件管理框架

Swift-CircleMenu  圆盘式菜单 建行

SDiffuseMenu          菜单弹射出来的动画

Swift30Projects        swift学习项目

Hero                  过渡动画库

He的wig          发送email

RandomKit    随机数生成

Quick          测试框架

RxSwift        swift 的reactive

GDPerformanceView-Swift  实时展示 内存 fps  app版本的view

swiftStoreKit  轻量级的app内购框架

Timepiece      日期处理

CryptoSwift  加密相关的方法

FSCalendar  自定义的日历库

ImageViewer  图片浏览器

ZYThumbnailTableView  可展开型tableview

SSASideMenu  侧滑

工具

face++    人脸识别

依图

cell自适应高度新方法http://www.ifun.cc/blog/2014/02/21/dong-tai-ji-suan-uitableviewcellgao-du-xiang-jie/

http://blog.sunnyxx.com/2015/05/17/cell-height-calculation/

新建一个工程    1.https    2. -objc  3. bit code 4.是否支持ipad(支持的话要加图片logo)

//www.greatytc.com/p/d553096914ff

Contants  常量  (同Config 配置文件)                                存放宏以及.h等全局文件

1. UIConstant

2.APIConstant                网址首字母  webview url  网址内容的加密

3.SecretContant            aped  key  加密内容

4.PrefixHeader.pch      常用的类的头文件,会带来编译问题

Utils(XXKit)  (同Tools)          实用工具栏                        包括底层的库的封装,例如音频、数据库、通用的视图、category, NetworkEngine,DataBase,CommonView以及工具类、网络引擎等  类目 数据库  push um等  开源中国中创建了个Utils类类似于reuseablecontroller

Class          类                                        存放Monkey项目的主要业务层代码,包括各个功能模块,以及各个功能模块通用的组件

1.Module  模块              主要的业务层代码  比如:我的 发现 社区 资讯 MVC都写在此

2.Common 共同            包括业务层各个功能模块通用的组件,以及一些基类(base)组件,通用(Global)类,通用的Model和View等  如 Base  Global  AppGeneral  VC  Views  Models

Resources 资源                                  css html js等代码    字体库  城市列表  图片 plist文件等

Vendor      供应商                              存放第三方库

需要熟练掌握的

AFNetWorking

SDwebimage工作方式,方法

响应者链条

runtime runloop

生命周期

内存  __block __weak

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {

TagCollectionViewFlowLayout *layout = (TagCollectionViewFlowLayout *)collectionView.collectionViewLayout;

CGSize maxSize = CGSizeMake(collectionView.frame.size.width - layout.sectionInset.left - layout.sectionInset.right, layout.itemSize.height);

CGRect frame = [self.tags[indexPath.item] boundingRectWithSize:maxSize options:NSStringDrawingUsesFontLeading|NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName: [UIFont systemFontOfSize:14.0f]} context:nil];

return CGSizeMake(frame.size.width + 20.0f, layout.itemSize.height);

}

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {

TagCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:reuseIdentifier forIndexPath:indexPath];

cell.backgroundColor = self.tagBackgroundColor;

cell.layer.borderColor = self.tagStrokeColor.CGColor;

cell.layer.cornerRadius = self.tagCornerRadius;

cell.titleLabel.text = self.tags[indexPath.item];

cell.titleLabel.textColor = self.tagTextColor;

if ([self.selectedTags containsObject:self.tags[indexPath.item]]) {

cell.backgroundColor = self.tagSelectedBackgroundColor;

}

return cell;

}

+ (UIImage *)imageWithColor:(UIColor *)color {

//描述一个矩形

CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);

//开启图形上下文

UIGraphicsBeginImageContextWithOptions(rect.size, NO, 0);

//获得图形上下文

CGContextRef ctx = UIGraphicsGetCurrentContext();

//使用color演示填充上下文

CGContextSetFillColorWithColor(ctx, [color CGColor]);

//渲染上下文

CGContextFillRect(ctx, rect);

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();

//关闭图形上下文

UIGraphicsEndImageContext();

return image;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,030评论 4 62
  • 无边细雨湿春泥,隔雾时闻水鸟啼。杨柳含颦桃带笑,一鞭吟过画桥西。 小婉吟着古人的诗句,背起简单的行囊,未曾辞别旧友...
    扶摇lk阅读 472评论 0 2
  • 宫本雅俊在《村上春树·旅》中说:“我们总是习惯于轨道上的生活,虽然觉得乏味和不甚自由,一想到偏离轨道后可能会出现的...
    諪諪_0c2f阅读 285评论 0 0
  • “不行,我们杨家一定要个男丁,这个女娃子不能留下。” 在九十年代那个地方教书先生杨志留下了这么一句话给他尚在月中的...
    归夏阅读 193评论 0 0
  • 一个让你重新认识自我、他人、世界的方法,抛弃以往错误的思维习惯,看到一个新的世界。 ①了解真实自我 了解真实的自己...
    1astsummer阅读 859评论 2 3