自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

转载 iOS SDK详解之NSCalendar & NSDate​Components

原文链接前言:NSCalendar 和 NSDate​Components是有关iOS 时间相关API很重要的两个类。最近刚好用到,这里就整理下。概念NSCalendar 顾名思义就是日历,封装了系统如何按照年月日的方式来组织时间,组织时间的方式和地区,时区有很大关系NSDate​Components 只是一个容器,容器中详细包含了年月日时分等信息。NSDate 就是一个绝

2016-06-16 17:06:04 603

转载 优化UITableViewCell高度计算的那些事

原文地址这篇文章是我和我们团队最近对 UITableViewCell 利用 AutoLayout 自动高度计算和 UITableView 滑动优化的一个总结。我们也在维护一个开源的扩展,UITableView+FDTemplateLayoutCell,让高度计算这个事情变的前所未有的简单,也受到了很多星星的支持,github链接请戳我这篇总结你可以读到:UITabl

2016-06-13 16:27:19 309

转载 App Transport Security(ATS)

原文链接最近下载iOS 9 GM版,然后跑了下我们的应用,发现有些网络请求失效了。先前在WWDC 2015上了解到iOS 9将要求网络请求使用HTTPS协议,但一直没有在iOS 9 beta版上跑过。现在这个问题突显出来了,所以搜了一些博文研究了一下。我们知道,Apple在安全及用户隐私方面做了很多工作,包括沙盒机制、代码签名、禁用私有API等。而在今年6月份的

2016-06-13 16:12:34 278

转载 使用_ObjectiveCBridgeable协议实现Objective-C类与Swift结构体的无缝互转

原文链接我们知道在Swift中,可以在NSArray与Array之间做无缝的转换,如下所示:1234567891011let mobile = ["iPhone", "Nokia", "小米Note"]let mobile1 = (mobile as NSArray).objectAtIndex(1)print(mobi

2016-06-13 16:07:57 966

转载 Objective-C Runtime 运行时之六:拾遗

原文链接前面几篇基本介绍了runtime中的大部分功能,包括对类与对象、成员变量与属性、方法与消息、分类与协议的处理。runtime大部分的功能都是围绕这几点来实现的。本章的内容并不算重点,主要针对前文中对Objective-C Runtime Reference内容遗漏的地方做些补充。当然这并不能包含所有的内容。runtime还有许多内容,需要读者去研究发现。supe

2016-06-13 16:01:22 267

转载 Objective-C Runtime 运行时之五:协议与分类

原文链接Objective-C中的分类允许我们通过给一个类添加方法来扩充它(但是通过category不能添加新的实例变量),并且我们不需要访问类中的代码就可以做到。Objective-C中的协议是普遍存在的接口定义方式,即在一个类中通过@protocol定义接口,在另外类中实现接口,这种接口定义方式也成为“delegation”模式,@protocol声明了可以呗其他任何方法类

2016-06-13 15:59:58 305

转载 Objective-C Runtime 运行时之四:Method Swizzling

原文链接理解Method Swizzling是学习runtime机制的一个很好的机会。在此不多做整理,仅翻译由Mattt Thompson发表于nshipster的Method Swizzling一文。Method Swizzling是改变一个selector的实际实现的技术。通过这一技术,我们可以在运行时通过修改类的分发表中selector对应的函数,来修改方法的实现。

2016-06-13 15:58:37 236

转载 Objective-C Runtime 运行时之三:方法与消息

原文链接前面我们讨论了Runtime中对类和对象的处理,及对成员变量与属性的处理。这一章,我们就要开始讨论Runtime中最有意思的一部分:消息处理机制。我们将详细讨论消息的发送及消息的转发。不过在讨论消息之前,我们先来了解一下与方法相关的一些内容。基础数据类型SELSEL又叫选择器,是表示一个方法的selector的指针,其定义如下:typedef struc

2016-06-13 15:56:46 753

转载 Objective-C Runtime 运行时之二:成员变量与属性

原文链接在前面一篇文章中,我们介绍了Runtime中与类和对象相关的内容,从这章开始,我们将讨论类实现细节相关的内容,主要包括类中成员变量,属性,方法,协议与分类的实现。本章的主要内容将聚集在Runtime对成员变量与属性的处理。在讨论之前,我们先介绍一个重要的概念:类型编码。类型编码(Type Encoding)作为对Runtime的补充,编译器将每个方法的返

2016-06-13 15:54:47 278

转载 Objective-C Runtime 运行时之一:类与对象

原文链接Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。对于Objective-C来说,这个运行时系统就像一个操作系统

2016-06-13 15:52:59 314

转载 KVO 和 KVC 的使用和实现

原文链接了解 KVO/KVCKVO/KVC 是观察者模式在 Objective-C 中的实现,以非正式协议(Category)的形式被定义在 NSObject 中。从协议的角度看,是定义了一套让开发者遵守的规范和使用的方法。在 Cocoa 的 MVC 框架中,架起 ViewController 和 Model 沟通的桥梁。// "NSKeyValueObservin

2016-06-13 14:59:30 356

转载 git 命令自动补全

原文链接只需要完成下面两步,就可以实现在mac osx 下git 命令自动补齐首先下载自动补齐脚本,使用curl命令如下:curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash编辑.pr

2016-06-06 17:06:27 327

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除