liuxc的博客

每天进步一点点


  • 首页

  • 标签

  • 分类

  • 归档

  • 搜索

Runtime笔记

发表于 2018-04-26 | 更新于: 2018-04-27 | 分类于 iOS |
字数统计: 6,753 | 阅读时长 ≈ 28
前言iOS开发也有几年了,之前一直听说有runtime,也看过其他框架源码中使用过,但是对于具体的原理还是比较模糊,这次通过此次分享让大家加深对于runtime理解。 Runtime的特性主要是消息(方法)传递,如果消息(方法)在对象中找不到,就进行转发,具体怎么实现的呢。我们从下面几个方面探寻Ru ...
阅读全文 »

深入理解RunLoop

发表于 2018-04-25 | 更新于: 2018-04-27 | 分类于 iOS |
字数统计: 7,097 | 阅读时长 ≈ 29
RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。 RunLoop 的概念一 ...
阅读全文 »

iOS触摸事件的传递过程

发表于 2018-04-25 | 更新于: 2018-04-25 |
字数统计: 1,192 | 阅读时长 ≈ 4
当指肚轻触屏幕,整个系统像沉睡的生灵突然被惊醒,然后经历过腥风血雨的一段奇幻旅行,最终又归于沉寂。 整个iOS触摸事件从产生到寂灭大致如下图: 起始阶段—> cpu处于睡眠状态,等待事件发生—> 手指触摸屏幕 系统响应阶段—> 屏幕硬件感应到输入,并将感应到的事件传递给输入输出驱 ...
阅读全文 »

UIViewController和UIView不同加载方式的生命周期

发表于 2018-04-24 | 更新于: 2018-04-24 | 分类于 iOS |
字数统计: 2,635 | 阅读时长 ≈ 12
1 基本说明已经做了几年iOS开发了,对于UIViewController和UIView的生命周期一直不是太重视,导致有很多地方模糊。几天专门写了个Demo来来验证一下。 2 加载UIViewController每一种加载方式所调用的加载方法不同,而且还有一些细节地方不同。苹果为我们提供了四种默认的 ...
阅读全文 »

iOS事件的传递和响应机制-原理篇

发表于 2018-04-23 | 更新于: 2018-04-25 |
字数统计: 6,698 | 阅读时长 ≈ 26
前言按照时间顺序,事件的生命周期是这样的: 事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view、寻找最合适的view的底层实现、拦截时间的处理)->找到最合适的view后事件的处理(touches方法的重写,也就是事件的响应) 其中重点和难点是: 1. 如何寻找最合适 ...
阅读全文 »

Swift访问控制

发表于 2018-04-18 | 更新于: 2018-04-18 | 分类于 iOS |
字数统计: 5,456 | 阅读时长 ≈ 20
前言本文章主要让大家了解掌握Swift中一些关键字的作用。 模块和源文件Swift的访问控制模型基于模块和源文件的概念。 模块是单一的代码分配单元———— 一个框架或应用程序会作为独立的单元构建和发布并且可以使用Swift的import关键字导入另一个模块。 Xcode 中的每个构建目标(例如应用程 ...
阅读全文 »

23个经典设计模式的Swift实现

发表于 2018-04-16 | 更新于: 2018-04-23 | 分类于 Design Mode |
字数统计: 8,428 | 阅读时长 ≈ 36
前言 这是一篇主观的文章,文字解释也尽可能简单,写作目的是一次团队内的知识分享,想让不了解设计模式的同事迅速对这些生词混个脸熟。所以本文适合懂Swift语法,想快速了解23个设计模式大概在讲什么的同学。 基本结构 比喻 让我联想到的一些事物 官方定义 原版定义 UML 不是原版UML 只保留了我觉 ...
阅读全文 »

YTKNetwork源码解析

发表于 2018-04-10 | 更新于: 2018-04-10 | 分类于 iOS |
字数统计: 14,033 | 阅读时长 ≈ 61
作为一名iOS开发工作者,大家应该都听过YTKNetwork框架吧。它是猿题库技术团队开源的一个网络请求框架,内部封装了AFNetworking。它把每个请求实例化,管理它的生命周期,也可以管理多个请求。 在正式讲解源码之前,我会先讲一下该框架所用的架构和设计模式。我总觉得对架构和设计有一定的了解的 ...
阅读全文 »

数据结构&算法 in Swift

发表于 2018-04-08 | 更新于: 2018-04-09 | 分类于 Data Structure & Algorithm |
字数统计: 23,267 | 阅读时长 ≈ 97
写在前面作为该系列的开篇,本文分为一下几个部分: Swift语法基础:讲解一下后续连载中讲到的数据结构和算法所涉及到的Swift语法知识(并不是很全面,也不是很深入,但是在实现数据结构和算法这块应该是够了)。 数据结构:简单介绍数据结构和算法的相关概念,以及用Swift来实现几个简单的数据结构(链 ...
阅读全文 »

SDWebImage源码解析

发表于 2018-03-26 | 更新于: 2018-03-26 | 分类于 iOS |
字数统计: 3,904 | 阅读时长 ≈ 18
前言相信广大的iOS开发者,对于SDWebImage都不会陌生,这个框架通过给UIButton和UIImageView添加分类,实现了一个异步下载图片并支持缓存的功能。整个框架的接口非常简洁,每个类的分工都很明确,是很值得大家学习的一个框架。 简介在使用这个框架的时候,只需要提供一个下载的url和占 ...
阅读全文 »
12
liuxc

liuxc

每天进步一点点

13 日志
4 分类
9 标签
RSS
GitHub E-Mail 知乎 简书
© 2018 liuxc | 博客全站共: 92.6k 字
本站访客数:
|
由 Hexo 强力驱动
0%