CSSwiftExtension - 贡献一个非常好用的Swift extension集合

CSSwiftExtension是我个人开源的一个非常有用的Swift extension集合。支持CocoadPods和Carthage。 目前主要包含Foundation和UIKit的两类extension.

2017-02-01 12:31:20

阅读数 742

评论数 0

iOS --- 一张图看懂转场动画

转场动画在iOS开发中非常常见, 其原理大概如下图: 一切都是从图中的 * Transition Animation * 开始.本文主要基于以上这张图, 讲解了transitionFromViewController, CATransition, TransitionAnimation三种转场实...

2016-08-16 23:30:57

阅读数 2460

评论数 0

iOS --- 如何暂停和继续CALayer上的动画

本文主要介绍了如何暂停和继续CALayer的动画. 首先来看CALayer./** The base layer class. **/@interface CALayer : NSObject <NSCoding, CAMediaTiming>NSCoding比较常用, 就不多说了. ...

2016-08-16 23:28:27

阅读数 4200

评论数 0

iOS --- 线程安全之semaphore

dispatch_semaphore是GCD中常见的同步方式, 相关方法有三个: dispatch_semaphore_create, dispatch_semaphore_wait, dispatch_semaphore_signal.

2016-07-31 14:47:29

阅读数 628

评论数 0

[转] --- Core Data 线程大揭秘

原文地址: Core Data 线程大揭秘, 作者是Marcus Zarra. Marcus Zarra Marcus Zarra 最为出名的就是他精通 Core Data、持久化存储以及网络等相关知识。他从 2004 年开始开发 Cocoa 应用,绝大多数时间他都用在开发软件上面。

2016-07-31 10:40:06

阅读数 681

评论数 0

iOS --- 自定义navigationBar的两种常见方式

我们经常会有自定义navigationBar的需求, 通常有两种实现方式.

2016-07-27 22:27:17

阅读数 1357

评论数 0

iOS --- 使用runtime将JSON转换成Model

这里简单介绍如何使用runtime将JSON转换成Model.

2016-07-26 22:33:20

阅读数 1712

评论数 0

iOS --- 关于KVC使用的一些小技巧

KVC是iOS开发中经常会用到的技巧, 主要包括valueForKey:/setValue:ForKey:, valueForKeyPath:/setValue:forKeyPath:两队组合方法. valueForKey:会首先查找以参数名命名的getter方法, 如果没有找到, 则在对象内寻...

2016-07-26 22:21:07

阅读数 916

评论数 0

iOS --- 为UIButton添加setBackgroundColor:forState:方法(包含OC和Swift两个版本)

有这样的一类简单需求: UIButton的背景色要与其state相关, 如未点击时显示蓝色, 点击时显示绿色. 但是, UIButton自身并未提供setBackgroundColor:forState:方法, 因此我们不得不单独在touchDown等方法中去更新其backgroundColor...

2016-07-07 21:50:41

阅读数 1124

评论数 0

iOS --- 如何在Swift项目中使用runtime?

在Objective-C的项目中, 经常遇到通过runtime来获取类和对象的成员变量, 属性, 方法, 在此基础上可以实现method swizzling. Swift代码中已经没有了Objective-C的运行时消息机制, 在代码编译时即确定了其实际调用的方法. 所以纯粹的Swift类和对象没...

2016-07-03 22:46:11

阅读数 5200

评论数 0

iOS---防止UIButton重复点击的三种实现方式

通常, 我们会采用如下的一些措施来防止重复点击UIButton:使用UIButton的enabled或userInteractionEnabled使用UIButton的enabled属性, 在点击后, 禁止UIButton的交互, 直到完成指定任务之后再将其enable即可.

2016-06-29 14:39:59

阅读数 11628

评论数 1

iOS---如何在CocoaPods上发布自己的项目

目前, 在iOS开发中, CocoaPods应该算是使用最为频繁的包管理工具了.

2016-06-29 00:05:37

阅读数 1470

评论数 1

iOS---使用CAEmitterLayer制作发射粒子的特效

CAEmitterLayer是QuartzCore提供的粒子引擎, 可用于制作美观的粒子特效. 如下图是一个粒子特效的截图, 实际的动态效果会更好, 因为gif制作比较模糊就没有贴出来.CAEmitterLayerCAEmitterLayer与CAEAGLLayer类似, 如果放在UIView中...

2016-06-18 09:40:48

阅读数 2170

评论数 0

iOS---Objective-C中@class与#import的区别

在Objective-C的项目中, @class通常放在.h文件中, 主要作用在于提升编译性能, 且能防止头文件的递归import.编译性能的考虑通常, 使用#import引入一个类的头文件, 编译时会将该类的头文件中的所有信息都引入, 包含属性和方法, 但有时候却不需要这么多, 且包含这些信息会...

2016-06-15 00:04:36

阅读数 1358

评论数 0

从iOS端Facebook分享的预览效果到Open Graph Protocol(开放内容协议)

主要记录了在iOS端进行Facebook分享时遇到的一个问题, 涉及到Open Graph Protocol(开放内容协议).

2016-06-12 22:41:37

阅读数 1945

评论数 0

[转]---使用 Realm 和 Swift 创建 ToDo 应用

本文转载自SwiftGG, 原文地址: [使用 Realm 和 Swift 创建 ToDo 应用](http://swift.gg/2015/12/08/building-a-todo-app-using-realm-and-swift/). 同时加上了个别的补充.

2016-06-10 20:31:13

阅读数 910

评论数 0

[转] --- 转载一份开源的高斯模糊算法

高斯模糊是非常常见的图像算法之一. 转载来源: StackBlurDemo 感谢作者.

2016-05-03 23:10:57

阅读数 612

评论数 0

iOS --- 理解Runtime机制及其使用场景

Runtime是iOS中比较难以理解, 但又非常强大的技术. 所谓运行时, 就是尽可能地把决定从编译器推迟到运行期, 就是尽可能地做到动态. 只是在运行的时候才会去确定对象的类型和方法的. 因此利用Runtime机制可以在程序运行时动态地修改类和对象中的所有属性和方法. Objective-C中调...

2016-04-17 22:25:33

阅读数 9939

评论数 2

iOS --- 获取屏幕顶层的UIViewController

经常会遇到一些场景, 要通过代码获取到当前显示在屏幕最顶层的UIViewController. 如何获取呢?

2016-04-04 21:14:50

阅读数 4026

评论数 0

iOS --- 理解UIWindow及其常见使用场景

UIWindow继承自UIView, 用来管理和协调各种视图. 提供一个区域来显示视图, 将事件event分发给视图. 每个iOS应用必须包含一个window用于展示APP的交互页面. 且一个APP通常只有一个UIWindow, 包含了APP的可视内容. 即使有多个, 也只有一个UIWindo...

2016-04-04 20:48:01

阅读数 1126

评论数 0

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