自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (7)
  • 问答 (2)
  • 收藏
  • 关注

原创 iOS-动态方法决议与消息转发机制

在消息发送机制中我们介绍过,OC是动态语言,对象调用方法其实就是对象接收消息,而消息的发送采用“动态绑定”机制,具体会调用哪个方法直到运行时才确定,然后去执行绑定的代码。绑定的过程:以下面代码为例Person *p = Person.new;[p eat];方法调用时,编译器会底层将之转换成C语言的函数objc_msgSend(p, @selector(eat));,来对p发送消息。消...

2019-12-10 15:55:51 713

原创 iOS-消息发送机制

在Object-C中,方法的调用不再理解为对象调用其方法,而是要理解成对象接收消息,消息的发送采用"动态绑定"机制,具体会调用哪个方法直到运行时才能确定,确定后才会去执行绑定的代码。OC调用方法的形式如下:Person *p = Person.new;[p eat];从形式上看调用方法是使用中括号的形式,但是我们知道Object-C是动态语言,当代码执行到该调用的时候,系统到底做了哪些工...

2019-12-08 22:30:42 1071

原创 iOS-动态添加方法

动态添加方法可以在动态创建的类中添加也可以在已存在的类中添加,先来看下动态添加方法的定义函数:OBJC_EXPORT BOOLclass_addMethod(Class _Nullable cls, SEL _Nonnull name, IMP _Nonnull imp, const char * _Nullable types) OBJC_AVAI...

2019-12-07 15:35:45 870

原创 iOS-动态添加属性

前一章介绍了动态创建类,这章主要讲动态添加属性。一、动态添加实例变量Ivar:通过函数class_addIvar()添加属性,更准确的说是添加成员变量,函数定义如下OBJC_EXPORT BOOLclass_addIvar(Class _Nullable cls, const char * _Nonnull name, size_t size, uint8_t...

2019-12-06 11:26:53 821

原创 iOS-动态创建类

在运行时动态创建一个类:导入头文件#import <objc/runtime.h>,动态添加类,创建一个继承 NSString 的类NSStringSubClass类,如下代码: // 类名也可以直接使用C字符串写法 ”NSStringSubClass“ NSString *className = @"NSStringSubClass"; // Cre...

2019-12-04 13:20:09 1273

原创 iOS-类和对象之本质

iOS界比较流行的一句话:万物皆对象!为什么会有这么一个说法呢?难道类(class)也是对象(object)?对象其本质又是什么?这些问题在实际开发中或许遇不到,但当真的涉及到底层的开发,就要面对这些问题。想要透析对象的本质,就要了解运行时(runtime),苹果已经将 Object-C runtime 代码开源了,从:http://opensource.apple.com/source/objc...

2019-12-02 18:15:59 1018

AAC_Test.zip

详细介绍音频的AAC编码和解码过程,可以直接把代码迁移你的项目中,适用于直播等各类音频类App

2018-03-28

DelayTest.zip

实现延时方法执行,可用的方法有定时器、GCD、NSThread、performSelector方法

2018-02-23

ThreadTest.zip

介绍多种开辟子线程的方法,包括:NSThread,NSOperationQueue,GCD等

2018-02-23

UnitTest.zip

单元测试、性能测试以及UI测试,代码示例,可以很好的看到怎么应用。

2018-02-23

PhotoTest.zip

对PhotoKit框架简单介绍与应用,Demo里面有仿微信和仿简书相册,以及相册视频集播放!

2018-02-06

ArrayTest.zip

多种数组遍历方式,GCD方式遍历,实现耗时操作在子线程中进行。

2018-02-05

ijkplayerTest

ijkplayer是基于ffmpeg的一个视频播放框架,可以播放多种格式的视频,许多直播也是用的这个框架!

2018-01-30

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

TA关注的人

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