美文网首页
iOS第三方总结

iOS第三方总结

作者: WHZ闹哪样 | 来源:发表于2016-06-12 11:36 被阅读432次

    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

    * 单元测试 http://www.jianshu.com/p/8bbec078cabe  单元测试介绍

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

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

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

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

    18.启动页  需要图片比例

    http://www.jianshu.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)

    http://www.jianshu.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;

    }

    相关文章

      网友评论

          本文标题:iOS第三方总结

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