前言 做了好多年的iOS开发,虽然问题遇到不少,也解决过不少,但是都没有记录下来,因为自己懒,有时候也因为自己工作忙忘记了,没有写过也没有维护过iOS相关的技术文章,没想着这...
前言 做了好多年的iOS开发,虽然问题遇到不少,也解决过不少,但是都没有记录下来,因为自己懒,有时候也因为自己工作忙忘记了,没有写过也没有维护过iOS相关的技术文章,没想着这...
写在开头:本文所介绍的方法使用的是iOS8-10中的API,不过同样支持在iOS11上运行。<最近更新时间:2017-09-11> 目录: 效果展示 系统默认左滑菜单实现 自...
在Xcode9上正常编译的项目,在Xcode10上编译可能会遇到如下错误: 这是因为Xcode10彻底废弃了libstdc++,相关的库文件libstdc++.6.0.9.d...
2018-11-13更新:已更新工程配置和修改部分代码,Xcode9能直接运行此项目了。但由于项目中使用的豆瓣API已经停止支持,所以项目已不能正常演示,是否会继续更新就看缘...
前言 最近在项目中, 做有关 AVAudioRecorder 的录音开发, 需要把录制的格式转成 MP3, 遇到了转码之后的MP3文件, 无法获取正确的时长问题. 为了解决这...
应用场景 在即时通讯APP中,例如微信,QQ,等都有语音发送功能,一般都要先将录音录制下来才能发送录音。 音频相关知识介绍: 1. 文件格式(不同的文件格式,可保存不同的编码...
HTTP 超文本传输协议 请求报文WX20181228-104135@2x.png 我们来看一下请求报文的格式,首先是请求行,请求行包括方法、URL、协议文本,方法常见的有G...
RunLoop的本质 RunLoop是通过内部维护的事件循环来对事件/消息进行管理的一个对象 没有消息需要处理时,休眠以避免资源占用,状态切换是从用户态通过系统调用切换到内核...
什么是Block Block是将函数及其执行上下文封装起来的对象 接下来让我们通过源码来看一看Block的本质 我们在一个方法中写了三行代码,第一行是定义了一个局部变量,第二...
在开始之前,我们先来了解下OC中的类与对象 这是一张经典的类的关系示意图,接下来简单的介绍一下这张图 首先当我们创建一个实力对象,会拷贝这个实力对象所属类的成员变量,但是不会...
objc_object 国际惯例,流程图 首先平时我们所使用的对象都是id类型的,id对应到runtime中就是objc_object这样的一个结构体,在这个结构体当中主要包...
在开始理解卡顿、掉帧及绘制原理前,首先让我们先了解下图像的显示原理 图像显示原理 关于CPU和GPU都是通过总线连接起来的,在CPU当中输出的往往是一个位图,再经由总线在合适...
事件传递 事件传递的两个核心方法 第一个方法返回的是一个UIView,是用来寻找最终哪一个视图来响应这个事件第二个方法是用来判断某一个点击的位置是否在视图范围内,如果在就返回...
前言 关于UIWebView的介绍,相信看过上文的小伙伴们,已经大概清楚了吧,如果有问题,欢迎提问。 本文是本系列文章的第二篇,主要为小伙伴们分享下WKWebView相关的内...
参考文献:WebP 极限压缩及ios实现iOS使用cocoapods 安装libwebp 0.6.0遇到Error installing libwebp解决方法 1. SDW...
来自我的个人博客Minecode.link 多继承可以允许子类从多个父类派生,而Objective-C并不支持多继承,但我们仍可间接实现。 Objective-C实现多继承主...