iOS
文章平均质量分 51
卑鄙的罗先生
这个作者很懒,什么都没留下…
展开
-
iOS内存管理学习心得
iOS中使用用内存引用计数来进行管理。(ARC,MRC) alloc, retain, copy会使内存引用计数立即+1。 当对象使用结束后要对它进行释放,release(立即-1) ,autorelease(未来-1)。 autorelease的对象会把这个对象放置到离它最近的自动释放池里,自动释放池释放的时候才会把自动释放池中的所有对象的内存引用原创 2014-12-23 21:30:05 · 379 阅读 · 0 评论 -
UIView frame与bounds的区别
frame指的是该view在父view坐标系统中的位置和大小。(以父坐标为参考系) bounds指的是该view在本身坐标系统中的位置和大小。(以本身坐标系为参照点)原创 2015-02-26 22:36:51 · 339 阅读 · 0 评论 -
对iOS中Block的理解
一、什么是block? 能够读取其他函数内部变量的函数。 block与函数的相似性: (1)可以保存代码 (2)有返回值 (3)有形参 (4)调用方式一样 二、实现原理? block的实现是基于C语言中的指针与函数指针。 三、通常使用block完成什么工作? (1)使用block实现委托模式 (2)多线程与block 四、基本使用 (1)定义blo原创 2015-02-27 11:28:43 · 432 阅读 · 0 评论 -
POST与GET区别
一、GET和POST GET与POST用于跟服务器交互。 GET与POST区别在于对数据的传递上。 GET在URL后以?的形式跟上发给服务器的参数,几个参数之间用&连接。比如http://www.thisisatest.com/login?passwd=123&user=567 *** ?后面带的参数的长度是有限制的,通常不能超过1KB。 POST发给服务器的参数全部在请求体中。 二、原创 2015-02-26 22:22:51 · 369 阅读 · 0 评论 -
retain与copy的区别
retain是指针拷贝, copy是内容拷贝。 retain:释放旧对象,将旧对象的值赋予输入对象,再将输入对象的引用计数值+1。 copy:建立一个引用计数为1的对象,然后释放旧对象。 比如一个NSString对象,地址为0×1111,内容为@”STR” Copy到另外一个NSString之 后,地址为0×2222,内容相同,新的对象retain为1, 旧有对象没有变化 ret原创 2015-02-27 11:41:57 · 416 阅读 · 0 评论 -
iOS数据持久化方法
iOS中有四种数据持久化的方式: 1.属性列表 2.对象归档 3.sqlite3 4.coreData原创 2015-02-26 22:50:53 · 366 阅读 · 1 评论 -
对NSOperation/NSOperationQueue的理解
一、NSOperation、NSOperationQueue 1.概述: NSOperation的作用是实现多线程编程。 NSOperation与NSOperationQueue实现多线程编程的基本步骤为: (1)先将一个需要的操作封到NSOperation中。 (2)将NSOperation添加到NSOperationQueue中。 (3)系统自动将NSOperationQueue的原创 2015-02-26 22:09:23 · 662 阅读 · 0 评论 -
类别的作用、继承/扩展与类别的区别
一、类别的作用 类别可以在不获悉、不改变原来的代码的情况下添加新的方法。若与原有方法重名,类别将会覆盖原有的方法。所以当我们在一个大工程中,我们需要在一个已经定义好的类中添加一些新的方法,而不想重写该类,我们可以使用类别对该类扩充新的方法。 类别主要有三个作用: (1)将类的实现分散到不同的文件或不同的框架中。 (2)创建对私有方法的向前引用。 (3)向对象添加非正式协议。 注:类别只原创 2015-02-27 15:25:56 · 679 阅读 · 0 评论 -
iOS应用程序生命周期
一、应用程序的状态 Not running 未运行 程序没启动 Inactive 未激活 程序在前台运行,不过没有接收到事件。在没有事件处理情况下程序通常停留在这个状态 Active 激活 程序在前台运行而且接收到了事件。这也是前台的一个正常的模式 Backgroud 后台原创 2015-02-28 08:35:08 · 361 阅读 · 0 评论 -
MVC、KVO、KVC
MVC (Model-View-Controller) ,MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。 M(Model)是模型对象,主要负责存储数据,模型对象通常会使用NSArray、NSDictionary、NSSet。 V(View)是视图对象,主要是一些UIButton、UILabel。 C(Controller)是控制器对象, 负责保持视图对象和模型原创 2015-02-18 16:17:59 · 566 阅读 · 0 评论 -
Delegate与NSNotification区别
委托:你的老板想要做个项目,于是老板把任务交给了项目经理,可是项目经理却把写代码的事情让你去做了,这个过程其实就是 项目经理.delegate = 程序员,那么假如项目经理有了一个oCCoding()任务要程序员做,那么程序员这个类中就要实现oCCoding()这个方法。 NSNotificationCenter:对象注册关注某个确定的notification(如果有人捡到一只小狗,就去告诉我)原创 2015-02-19 13:54:14 · 840 阅读 · 0 评论 -
iOS多线程编程及简单封装图片下载
SDWebImage的简单实现原创 2014-12-23 19:29:10 · 647 阅读 · 0 评论 -
UIViewController的执行顺序
在IOS常用模式MVC中,UIViewController通常指的是C(控制器)。由于M与V不能直接通信,C来负责M与C之间的交互问题。 注:此图摘自Stanford CS193P课程上PPT。 当一个视图控制器被创建并显示的时候,代码的执行顺序为: 1. alloc 创建对象,分配空间。 2. in原创 2014-12-23 22:00:32 · 382 阅读 · 0 评论 -
iOS面试题(一)
一、简述OC中内存管理机制。与retain配对使用的方法是dealloc还是release,为什么?需要与alloc配对使用的方法是dealloc还是release,为什么?readwrite,readonly,assign,copy,nonatomic,atomic,strong,weak属性的作用? OC使用了一种叫做引用技术的机制来管理对象,如果对一个对象使用了alloc、[Mutable原创 2015-03-12 17:35:23 · 338 阅读 · 0 评论