• iOS源码学习总结框架


    1.ARChromeActivity:

    用于在Google Chrome中打开网址的UIActivity子类。

    2.KINWebBrowser:

    它使用iOS 8的 WKWebView API编写,同时在iOS 7上使用UIWebView来兼容.

    KINWebBrowserViewController must be contained in a UINavigationController.

    3.PPGetAddressBook:

    •  PPGetAddressBook对AddressBook框架(iOS9之前)和Contacts框架(iOS9之后)做了对应的封装处理;

    •  支持获取按联系人姓名首字拼音A~Z排序(重点:已经对姓名的第二个字做了处理,排序更准确!);

    • 支持获取原始顺序的联系人,未分组,可自行处理.

    4.NullSafe:

    一个老外在Github有了空处理的神器,只要将这个类别(Category)加入项目中就可万事无忧,由于里面代码我也不太懂,所以大家自己研究下哈。

    OC中nil是一个指向不存在的对象指针,OC中的对象定义默认赋值为nil,而数组和字典里是不可以有nil的,但可以为[NSNull null];另外在框架层面,Foundation定义了NSNull,即一个类方法+null,它返回一个单独的NSNull对象。NSNull与nil以及NULL不同,因为它是一个实际的对象,而不是一个零值。

    5.MLeaksFinder:

    MLeaksFinder 提供了内存泄露检测更好的解决方案。只需要引入 MLeaksFinder,就可以自动在 App 运行过程检测到内存泄露的对象并立即提醒,无需打开额外的工具,也无需为了检测内存泄露而一个个场景去重复地操作。MLeaksFinder 目前能自动检测 UIViewController 和 UIView 对象的内存泄露,而且也可以扩展以检测其它类型的对象。

    MLeaksFinder 的使用很简单,参照 https://github.com/Zepo/MLeaksFinder ,基本上就是把 MLeaksFinder 目录下的文件添加到你的项目中,就可以在运行时(debug 模式下)帮助你检测项目里的内存泄露了,无需修改任何业务逻辑代码,而且只在 debug 下开启,完全不影响你的 release 包。

    当发生内存泄露时,MLeaksFinder 会中断言,并准确的告诉你哪个对象泄露了。这里设计为中断言而不是打日志让程序继续跑,是因为很多人不会去看日志,断言则能强制开发者注意到并去修改,而不是犯拖延症。

    6.FBRetainCycleDetector:

    Facebook发布了一个叫FBRetainCycleDetector的工具,专门用于检测对象是否存在引用循环.

    7.DZNEmptyDataSet:

    对于iOS开发者来说,UITableView是在开发过程中使用比较多的一个控件。如果UITableView表视图没有数据,页面一片空白,不是一个很好的用户体验。我们都希望在数据源为空的时候,给用户一些相应的提示,提高交互效果。

    DZNEmptyDataSet就如同福音,适用于每一个iOS项目,只要遵DZNEmptyDataSetSource、 DZNEmptyDataSetDelegate这两个协议,在UITableView和UICollectionView中实现对应的代理方法就OK啦。

    8.DACircularProgress:

    一个UIView子类,具有UIProgressView属性,通过自定义色彩、尺寸以及厚度等来创建多种风格的圆形进度视图。

    9.SSKeychain:

    keychain与userdefaults的区别:

    1.keychain是将数据加密后存储在本地,更安全.路径:Library/Application Support/iPhone Simulator/模拟器版本/Library/Keychains/

    userdefaults数据以明文的形式保存在.plist文件中.路径:Library/Application Support/iPhone Simulator/模拟器版本/Applications/应用对应的数字/Library/Preference/.plist文件

    2.当你删除APP后keychain存储的数据不会删除,user defaults存储的数据会随着APP而删掉

    SSkeychain是对keychain的封装 实现了添加/删除/查询用户名和密码.

    10.TUSafariActivity:

    用于在sari中打开网址的UIActivity子类。和前面第一个框架类似的使用.

  • 相关阅读:
    20190318-使用类做一个简单的图书馆管理系统
    20190313-面向对象的简单理解
    20190313-时间和日期-Time
    20190305-leetcode题目有效的括号
    20190227-做一个简易代码统计工具
    20190226-利用序列化完成小型记账程序
    20190221-文件操作
    20190131-文件操作命题练习
    Excel技巧—如何从重复行中取某一行
    Excel技巧—轻松搞定多级联动下拉列表
  • 原文地址:https://www.cnblogs.com/pengsi/p/6644459.html
Copyright © 2020-2023  润新知