LML Blog

Thinking will not overcome fear but action will.

NSCache

前言 开发过程中涉及到了对图片的内存缓存,顺便学习了下NSCache相关知识,并初步了解了一下SDWebimage关于缓存的部分。本文主要介绍NSCache,下一篇在介绍SDWebImage对缓存的处理。 后续有时间在看下磁盘缓存NSURLCache、YYCache。YYCache是比较经典的库,可以仔细看下。 NSCache相比于NSMutableDictionary实现缓存功能的优点 ...

包大小优化

前言 本系列文章主要介绍 iOS 中几种常见的定时器的使用,主要包括: NSTimer CADisplayLink dispatch_source_t dispatch_source_t 创建、添加、开启方法 (void)addDisPatch_source { //1.创建 self.disTimer = dispatch_source_create(...

图片通用知识

图片通用知识

前言 本系列文章主要介绍 Xcode 对图片的处理和图片相关知识: Xcode 对图片的处理 Asset Catalog 逆向 UIImage 加载图片的相关方法、加载流程、缓存原理等 图片相关知识 几种图片格式的对比 图片编码、无损压缩、有损压缩 图片处理相关工具 ...

Asset Catalog 逆向

前言 本系列文章主要介绍 Xcode 对图片的处理和图片相关知识: Xcode 对图片的处理 Asset Catalog 逆向 UIImage 加载图片的相关方法、加载流程、缓存原理等 图片相关知识 几种图片格式的对比 图片编码、无损压缩、有损压缩 图片处理相关工具 ...

iOS 定时器

前言 本系列文章主要介绍 iOS 中几种常见的定时器的使用,主要包括: GCD 定时器 NSTimer CADisplayLink GCD 定时器 循环调用 dispatch_source_t 创建、添加、开启方法 (void)addDisPatch_source { //1.创建 self.disTimer = dispatch_source_crea...

iOS界面渲染与优化

前言 本文主要介绍下吗几点知识 iOS 界面渲染流程 iOS 中的渲染框架 离屏渲染那些事 什么是离屏渲染? 哪些操作导致离屏渲染?如何优化 为什么UI必须在主线程进行 iOS 界面渲染流程 Runloop 与绘图循环 Main Runloop 负责处理 app 存活期间的大部分事件,如用户交互等,它一直处于不断...

__bridge、__bridge_retained与__bridge_transfer

前言 在 iOS 开发当中,难免会使用到 OC 跟 C++混编的情况,本文介绍如何在 ARC 环境下转换 C 指针跟 OC 类指针 __bridge __bridge :用作于普通的 C 指针与 OC 指针的转换,不做任何操作。所谓不做任何操作,指的是不对 OC 只在进行 retian 也不进行 release void *p; NSObject *objc = [[NSObject ...

像素、分辨率、点、PPI与DPI

前言 本文主要简单介绍一下几个基本概念:像素、分辨率、PPI与DPI。理解这样概念,有助于我们画UI图时候理解原理。 #像素 像素即px,是画面中最小的点(单位色块) #分辨率 例如,屏幕分辨率是1024×768,也就是说设备屏幕的水平方向上有1024个像素点,垂直方向上有768个像素点。像素的大小是没有固定长度的,不同设备上一个单位像素色块的大小是不一样的。 例如,尺寸面积大小相同的...

Xcode 与 CocoaPods (一)

前言 本文简单介绍平时项目中用到的 Xcode 与 CocoaPods 相关概念以及知识。 Xcode工程配置和基本概念 Workspace Workspace 可以包含无数 Project Workspace 是为了解决平级的不同 Project 互相依赖的方案 在一般的 App 中 Workspace 的作用是:组织 pods project 和主工程 projec...

python 中的 unicode和编码

目录 unicode和编码 unicode 和string python中判断相等 总结 unicode和编码 UTF-8 and Unicode cannot be compared. UTF-8 is an encoding used to translate numbers into binary data. Unicode is a character ...