YYImage源码分析

前言

YYImage 是一个强大的iOS图像框架,是YYKit 的组件之一。具体用法可以参考Demo。

特性:

  • 支持以下类型动画图像的播放/编码/解码:
    WebP, APNG, GIF。
  • 支持以下类型静态图像的显示/编码/解码:
    WebP, PNG, GIF, JPEG, JP2, TIFF, BMP, ICO, ICNS。
  • 支持以下类型图片的渐进式/逐行扫描/隔行扫描解码:
    PNG, GIF, JPEG, BMP。
  • 支持多张图片构成的帧动画播放,支持单张图片的 sprite sheet 动画。
  • 高效的动态内存缓存管理,以保证高性能低内存的动画播放。
  • 完全兼容 UIImage 和 UIImageView,使用方便。
  • 保留可扩展的接口,以支持自定义动画。
  • 每个类和方法都有完善的文档注释。

YYText源码分析

YYText 简单介绍

YYText 是YYKit中的一个富文本显示,编辑组件,拥有YYLabel,YYTextView 两个控件。其中YYLabel类似于UILabel,但功能更为强大,支持异步文本渲染,更丰富的效果显示,支持UIImage,UIView, CALayer 文本附件,自定义强调文本范围,支持垂直文本显示等等。YYTextView 类似UITextView,除了兼容UITextView API,扩展了更多的CoreText 效果属性,支持高亮链接,支持自定义内部文本路径形状,支持图片拷贝,粘贴等等。

YYModel源码分析

前言

YYModel 是一个iOS JSON模型转化库,和其他一些同类型库相比,具有比较好的性能优势。本文会对YYModel的源码进行分析,具体用法作者ibireme在github中有提及。YYModel的目录结构很简单,只有两个类, NSObject+YYModelYYClassInfoYYClassInfo主要对根类NSObject 的 Ivar , Method, Property以及Class本身进行了封装,NSObject+YYModel 是 NSObject的分类,扩展了一些JSON模型转化的方法。

Hexo + Github-Pages 从零开始搭建个人博客

经过各种找资料,踩过各种坑,终于搭建好了个人博客,安装hexo是3.2.2版本,hexo不同的版本,配置稍微有些不一样。由于本人使用的是Mac,下面的都是针对Mac的,Windows下的配置类似。


Hexo

hexo是一个基于Node.js的简单,快速,强大的静态博客框架,可以方便的生成静态网页托管在github上,作者是来自台湾的 Tommy Chen。特点:

  • 不可思议的快速 ─ 只要一眨眼静态文件即生成完成
  • 支持 Markdown
  • 仅需一道指令即可部署到 GitHub Pages 和 Heroku
  • 已移植 Octopress 插件
  • 高扩展性、自订性
  • 兼容于 Windows, Mac & Linux

Swift 闭包

Swift 中的闭包是自包含的函数代码块,可以在代码中被传递和使用。类似于OC中的Block以及其他函数的匿名函数。闭包可以捕获和存储其所在上下文中任意常量和变量的引用,被称为包裹常量和变量。Swift可以为你管理在捕获过程中涉及到的所有内存操作

Kingfisher 3.x 学习(二)

ImageDownloader

Kingfisher 中,该类主要负责图片的网络下载,其实现原理是基于系统的URLSession ,实现它的代理方法。下面是几个主要部分:

  • ImageFetchLoad
  • URLSession的配置
  • 下载方法
  • 取消下载
  • URLSession 代理方法
  • 下载某张特定图片
|