自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

凌晨一点钟

技术感想

  • 博客(4)
  • 资源 (1)
  • 收藏
  • 关注

原创 (译)我们来构造objc_msgSend

objc_msgSend函数是objective-C的基础。有人问objc_msgSend的内部实现,我想最好的理解方式就是手动实现一次。踏板例如随便写个方法:[obc message];编译器会根据方法生成一个消息函数:objc_msgSend(obj, @selector(message));objc_msgSend完成message方法的调度。那么objc_m

2018-04-17 03:00:57 465

原创 Swizzling方法

swizzling是一种能够改变已存在的selector的实现的方法,它通过改变selectors在类的映射表中的映射方式修改Objective-C的方法调用。举个例子,如果我们想追踪各个viewController对用户展示了多少次,我们可以在每个viewController的viewDidAppear:中添加追踪代码,但是那样会产生大量的重复代码块。也可以通过继承的方式来实现,但是这种方式

2018-04-16 17:16:57 376

原创 meta-class in OC

用runtime创建类下面的代码是创建了一个NSError的subClass和添加一个方法:Class newClass = objc_allocateClassPair([NSError class], "RuntimeErrorSubClass", 0);/** Class cls: 将要给添加方法的类,传的类型 [类名 class]* SEL name: 将要添加的方法名,传

2018-04-15 02:07:55 181

原创 iOS9上实现3D Touch功能之快速启动

实现3D Touch快速启动功能有两种方式,一种是静态标签,一种是动态标签。1、静态标签的实现静态标签的实现是直接在plist文件中配置相关参数就能实现了。UIApplicationShortcutItems数组是快速启动项的集合,有几个子项就有多少个快速启动项(不超过四个)UIApplicationShortcutItemType是设置启动项的标识UIApplic

2016-03-02 15:57:03 833

OpenGLES 渲染立体图像资料

OpenGLES 渲染立体图像资料,包括书籍OPENGL ES 3.0编程指南,资源及源码

2018-04-27

空空如也

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

TA关注的人

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