ios开发小常识.docx
上传人:qw****27 上传时间:2024-09-11 格式:DOCX 页数:11 大小:31KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

ios开发小常识.docx

ios开发小常识.docx

预览

免费试读已结束,剩余 1 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

杭州java软件培训www.zjbenet.com杭州网络营销培训www.hzbeidaqingniao.com一非ARC的内存管理情况1-autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象。当用户的代码运行告一段落,开始等待用户的操作,自动释放池就会被释放掉(调用dealloc),池中的对象都会收到一个release,有可能会因此被销毁。2-成员属性:readonly:不指定readonly,默认合成getter和setter方法。外界毫不关心的成员,则不要设置任何属性,这样封装能增加代码的独立性和安全性。相当于私有成员?assign:表示只进行简单的赋值,不会发送retain消息。retain:会向旧值发送release消息,向新值发送retain消息。copy:向旧值发release消息,向新值发送copy消息。3-引用计数特殊情况:NSArray:当把一个对象添加到NSArray时,对象的引用计数会加1,移除时会减1。UIView:addGestureRecognizer会对手势识别器的引用计数加1,removeGestureRecognizer会减1。二图形API这个讲的好,清晰明确:http://www.cocoachina.com/bbs/read.php?tid=77731&page=11-Quartz2D,的绘图总是发生在图形环境(GraphicsContext)中。视图会在调用drawRect:方法进行绘图之前,创建好图形环境,通过UIGraphicsGetCurrentContext函数来获得这个图形环境。如果直接在图像或者PDF上绘图,需要调用CGBitmapContextCreate或者CGPDFContextCreate函数来创建图形环境。Quartz2D绘图的基础元素是路径。路径可以是一些基础几何形状,也可以是这些几何形状的组合。当需要创建一条路径时,应当调用CGContextBeginPath函数;当需要将路径绘制的起点移动到一个位置时,应当调用CGContextMoveToPoint函数;当想绘制一条线段时,应当调用CGContextAddLineToPoint。CTM(当前变换矩阵)将绘图从用户空间映射到设备控件。当图形环境刚刚创建时,CTM初始化为一个单位矩阵。对CTM进行平移变换应当调用CGContextTranslateCTM函数,进行旋转变换应当调用CGContextRotateCTM函数,进行缩放变换应当调用CGContextScaleCTM函数。2-UIBezierPath使用UIBezierPath绘图的好处:-采用系统坐标系-在CoreGraphics的基础上封装,具有CoreGraphics的主要功能,无需考虑图形环境。UIBezierPath*pathLines=[UIBezierPathbezierPath];[pathLinesmoveToPoint:point1];//移动到point1位置[pathLinesaddLineToPoint:point2];//画一条从point1到point2的线pathLines.lineWidth=5.0;//线宽[UIColorredColor]set];//颜色设置[pathLinesstroke];//开始描绘在同一UIBazierPath中,只能采用相同的颜色和线宽。可以调用closePath,从当前点画一条直线到当前子路径的初始点。如果要填充路径,应当使用fill方法,此方法会填充路径中得所有封闭子路径。[color=darkblue]三容器[/color]-NSArray和NSMutableArray+array:创建一个空数组+arrayWithArray:从另一个数组创建新的数组+arrayWithContentsOfFile:读文件创建数组+arrayWithObject:创建一个数组,其中包含一个给定对象+arrayWithObjects+arrayWithObjects:count:从C数组创建-containsObject:是否包含一个元素-count:数量-lastObject:返回最后一个-objectAtIndex:返回某一个-objectsAtIndexes:返回一组,类型为NSArray-indexOfObject:返回对象索引-arrayByAddingObject:原数组最后加一个对象,产生一个新的数组-arrayByAddingObjectsFromArray:在原数组的最后添加另一个数组中的所有对象,产生一个新数组-subarrayWithRange:抽取原数组中得一部分,产生一个新的数组-isEqualToArra