自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (3)
  • 收藏
  • 关注

转载 在 OC 中实现消息的转发

转发:http://www.kittenyang.com/forwardinvocation/我正在写一个自定义的 TableView 滚动条,可以实时显示当前 Cell 的编号,比原生的黑条更具可视性。实现原理也很简单,KVO 监听 contentOffset 然后根据 public func indexPathForRowAtPoint(point: CGPoi

2016-04-26 22:19:29 464

转载 苹果Xcode帮助文档阅读指南

Xcode文档的结构如上图,打开后,整个文档界面有左面的侧栏和右面的内容区域构成。左面的侧栏可以选择不同的文档库。你的Xcode里面一般来说有一组不同版本的iOS文档库、一组不同版本的OS X文档库,以及一个Xcode文档库。如果你这里没有你要查看的文档库,你可以选择Xcode的Preferences菜单,然后选择Downloads -> Documentation。在

2016-04-25 23:40:42 1212

转载 runloop 与autorelase对象、Autorelease Pool 在什么时候释放

iOS的运行时是由一个一个runloop组成的,每个runloop都会执行下图所示的一些步骤:每个runloop中都创建一个Autorelease Pool,并在runloop的末尾进行释放,所以,一般情况下,每个接受autorelease消息的对象,都会在下个runloop开始前被释放。也就是说,在一段同步的代码中执行过程中,生成的对象接受autorelease消息后,一般是不会在代

2016-04-25 23:29:16 1890

转载 autorelease和autoreleasepool 注意事项优缺点

1. 在使用Dispatch Queue时, 虽然其Pool中每个thread都会有autoreleasepool,但是如果我们给的task每个都创建一些对象,并做autorelease,那若提交的task太多,比如有100000个,那在thread退出前,这些内存都无法释放,等于说有大量内存被占用而释放不了,也类似于leak了,所以这时,最好每个提交的task都有自己的autoreleasepo

2016-04-25 23:13:27 1544

转载 @autoreleasepool 在什么时候使用

根据 Apple的文档 ,使用场景如下:写基于命令行的的程序时,就是没有UI框架,如AppKit等Cocoa框架时。写循环,循环里面包含了大量临时创建的对象。(本文的例子)创建了新的线程。(非Cocoa程序创建线程时才需要)长时间在后台运行的任务。atureleasepool自动释放池自动释放池存储于内存中的栈中遵循"先进后出"原则#import  #imp

2016-04-25 23:07:40 2312

转载 NSURLRequestCachePolicy 缓存的方式

1> NSURLRequestUseProtocolCachePolicy = 0, 默认的缓存策略, 如果缓存不存在,直接从服务端获取。如果缓存存在,会根据response中的Cache-Control字段判断下一步操作,如: Cache-Control字段为must-revalidata, 则询问服务端该数据是否有更新,无更新的话直接返回给用户缓存数据,若已更新,则请求服务端.

2016-04-25 17:09:39 362

转载 Mantle的优缺点

简要分析 先来简要分析一下各种构建model层方法的优点和缺点: 一、工具生成model 优点: 1、简单易用,新手也可以10秒上手 2、有一定的容错代码 3、代码生成相对工整和规范,部分工具还可以选择是否使用ARC 4、生成简单model耗时少 缺点: 

2016-04-20 23:46:20 1314

原创 Mantle 使用时与到问题

1. 当属性为weak时,默认设置为MTLModelEncodingBehaviorConditional,否则默认为MTLModelEncodingBehaviorUnconditional,设置完后,将其封装在NSNumber中并放入字典中。        MTLModelEncodingBehavior behavior = (attributes->weak ? MTLModelE

2016-04-20 23:44:17 1000

原创 一个自定义服务以执行脚本实现类属性的快速整齐地排列

Note: 如果对于这些脚本命令还不熟悉,它们是相当好理解的。排序(sort)是按照字母顺序来的,`uniq`是会删除所有重复的行数。`uniq`在这里可能派不上用场,但是用它来管理`#import`,那是极好的。Mac OS X允许你创建整个操作系统全局通用的服务,你将用它来创建一个用在Xcode中的脚本服务,按如下步骤来设置:(1)使用Spotlight来搜索Automator

2016-04-18 15:46:33 364

转载 Lldb篇2 chisel来提高调试效率

LLdb篇2教你使用faceBook的chisel来提高调试效率首先如果使用lldb,最好你要学着使用chisel来提高效率,否则你会浪费很多的时间,除非你自己会写python脚本,自己封装一些lldb的命令。 安装chiselchisel的安装是十分简单,它是在终端通过brew安装的,具体可以点击链接参考github的安装说明,唯一需要注意的一点就是命令行安装完之后,

2016-04-12 14:30:13 663

转载 iOS调试技巧之LLDB

LLDB介绍LLDB 是一个有着 REPL 的特性和 C++ ,Python 插件的开源调试器。LLDB 绑定在 Xcode 内部,存在于主窗口底部的控制台中。调试器允许你在程序运行的特定时暂停它,你可以查看变量的值,执行自定的指令,并且按照你所认为合适的步骤来操作程序的进展。基础这里有一个简单的小程序,它会打印一个字符串。注意断点已经被加在第 8 行。断点可以通过点击 Xcode 的

2016-04-12 14:28:51 335

转载 关系型数据库和非关系型数据库区别

关系型数据库通过外键关联来建立表与表之间的关系,非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定比如 有一个学生的数据:    姓名:张三,性别:男,学号:12345,班级:二年级一班还有一个班级的数据:    班级:二年级一班,班主任:李四关系型数据库中,我们创建学生表和班级表

2016-04-08 22:29:18 1384

转载 nil、Nil、NULL和NSNull区别

前言记得曾经有不少朋友问过笔者,在Objective-C中nil和Nil以及NULL的区别。最重要的是,在面试中还有不少朋友常会被问到。记得当年刚找工作的时候,笔者就被面试官问到过,现在笔者在这里统一详细说明。NULL对于学习过C/C++语言的朋友,对NULL一定很熟悉吧?这就是在C/C++中的空指针。在C语言中,NULL是无类型的,只是一个宏,它代表空。我们不研究

2016-04-05 00:30:48 8230

转载 详解 CALayer 和 UIView 的区别和联系

在说到 UIView 和 CALayer 的区别和联系的时候,被喵神指出没有切中要点,所以这里就 CALayer 和 UIView 这个问题重新整理了下。这里会先分条解释,最后会在文章的结尾给出概括性总结。1.首先UIView可以响应事件,Layer不可以.UIKit使用UIResponder作为响应对象,来响应系统传递过来的事件并进行处理。UIApplication、UIView

2016-04-05 00:24:35 328

线程保活:

线程保活:

2022-03-16

快钱支付(ios)接口

快钱支付代码,详细的文档和接口以及通信参数。

2012-02-16

windows mobile平台上 蓝牙通信

手机的功能键可以当作PC上的鼠标来控制电脑

2010-02-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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