自定义博客皮肤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之间做无缝的转换,如下所示: 1 2 3 4 5 6 7 8 9 10 11 let 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中最有意思的一部分:消息处理机制。我们将详细讨论消息的发送及消息的转发。不过在讨论消息之前,我们先来了解一下与方法相关的一些内容。 基础数据类型 SEL SEL又叫选择器,是表示一个方法的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/KVC KVO/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关注的人

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