代码改变世界

iOS 5中的strong和weak关键字

2013-06-06 10:53 by Mr.Xer, 159 阅读, 0 推荐, 收藏, 编辑
摘要:iOS 5 中对属性的设置新增了strong 和weak关键字来修饰属性(iOS 5 之前不支持ARC)strong 用来修饰强引用的属性;@property (strong) SomeClass * aObject;对应原来的@property (retain) SomeClass * aObject; 和 @property (copy) SomeClass * aObject;weak 用来修饰弱引用的属性;@property (weak) SomeClass * aObject;对应原来的@property (assign) SomeClass * aObject;__weak, __ 阅读全文

iOS Block学习

2013-06-06 10:51 by Mr.Xer, 159 阅读, 0 推荐, 收藏, 编辑
摘要:iOS4已经直接支持blocks,很有必要学习一下。在ios,blocks是对象,它封装了一段代码,这段代码可以在任何时候执行。Blocks可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:blocks是inline的,并且它对局部变量是只读的。Blocks的定义:[cpp]view plaincopyint(^myBlock)(inta,intb)=^(inta,intb){returna+b;};定义了一个名为myBlock的blocks对象,它带有两个int参数,返回int。等式右边就是blocks的具体实现,是不是有点像方法的定义 阅读全文

25个增强iOS应用程序性能的提示和技巧

2013-06-06 10:32 by Mr.Xer, 194 阅读, 0 推荐, 收藏, 编辑
摘要:转载自:http://www.cocoachina.com/newbie/basic/2013/0522/6259.html 阅读全文

使用Xcode和Instruments调试解决iOS内存泄露

2013-06-06 10:07 by Mr.Xer, 148 阅读, 0 推荐, 收藏, 编辑
摘要:虽然iOS 5.0版本之后加入了ARC机制,但由于相互引用关系比较复杂时,内存泄露还是可能存在。所以了解原理很重要。这里讲述在没有ARC的情况下,如何使用Instruments来查找程序中的内存泄露,以及NSZombieEnabled设置的使用。本文假设你已经比较熟悉Obj-C的内存管理机制。实验的开发环境:XCode 4.5.21、运行Demo。先下载一个实现准备好的内存泄露的Demo吧:leak app下载下来,打开运行,程序是一个寿司的列表,列出各种寿司卷。试着选择里面的几行,应该是选第二行的时候就崩溃了。崩溃截图:在崩溃的地方断住了,知道crash的地方了,但是不知道具体crash的原 阅读全文

iOS 5中的strong和weak关键字

2013-04-10 10:40 by Mr.Xer, 182 阅读, 0 推荐, 收藏, 编辑
摘要:iOS 5 中对属性的设置新增了strong 和weak关键字来修饰属性(iOS 5 之前不支持ARC)strong 用来修饰强引用的属性;@property (strong) SomeClass * aObject;对应原来的@property (retain) SomeClass * aObject; 和 @property (copy) SomeClass * aObject;weak 用来修饰弱引用的属性;@property (weak) SomeClass * aObject;对应原来的@property (assign) SomeClass * aObject;__weak, __ 阅读全文

iOS设备的硬件适配 (关于armv6, armv7, armv7s )

2013-04-03 15:05 by Mr.Xer, 365 阅读, 0 推荐, 收藏, 编辑
摘要:1.OpenGL ES版本支持iPhone:iPhone 3G以下(包括iPhone 3G)版本设备只支持OpenGL ES1.1,iPhone 3GS以上(包括iPhone 3GS)版本设备既支持OpenGL ES1.1,也支持OpenGL ES2.0。iPad:iPad所有版本设备既支持OpenGL ES1.1,也支持OpenGL ES2.0。iPod Touch:iPod Touch2代以下(包括iPod Touch2代)版本设备只支持OpenGL ES1.1,iPod Touch3代以上(包括iPod Touch3代)版本设备既支持OpenGL ES1.1,也支持OpenGL ES2. 阅读全文

UILabel根据字数多少自动实现适应高度

2013-01-30 16:30 by Mr.Xer, 219 阅读, 0 推荐, 收藏, 编辑
摘要:UILabel *msgLabel = [[UILabel alloc] initWithFrame:CGRectMake(15, 45, 0, 0)]; //290 230 msgLabel.backgroundColor = [UIColor lightTextColor]; [msgLabel setNumberOfLines:0]; msgLabel.lineBreakMode = UILineBreakModeWordWrap; UIFont *fonts = [UIFont fontWithName:@"Arial" size:12]; msgLabel.fon 阅读全文

Paths

2013-01-25 11:05 by Mr.Xer, 441 阅读, 0 推荐, 收藏, 编辑
摘要:Paths中的几个重要元素Pointsvoid CGContextMoveToPoint ( CGContextRef c, CGFloat x, CGFloat y);指定一个点成为current pointQuartz会跟踪current point一般执行完一个相关函数后,current point都会相应的改变.Lines相关的几个函数void CGContextAddLineToPoint ( CGContextRef c, CGFloat x, CGFloat y);创建一条直线,从current point到 (x,y)然后current point会变成(x,y)void CG 阅读全文

Objective-C的新特性

2012-12-27 13:59 by Mr.Xer, 151 阅读, 0 推荐, 收藏, 编辑
摘要:Objective-C的新特性今年2012的WWDC上,苹果针对Objective-C和LLVM编译器都做了重大改进,Objective-C增加新特性整理如下:1、方法顺序无关Objective-C类由声明文件h和实现文件m组成,所有的public方法都在h文件中声明,private方法可以写在m文件中,但是在早期的编译环境中需要注意方法的顺序,例如下面的代码,在早期的编译环境会给出警告:类和方法声明:@interface ObjcNewFeatures : NSObject -(void)doSomething:(NSString *) text; @end 实现:@implementa.. 阅读全文

iOS程序发布测试4-打包(Archive)发布(share)

2012-09-07 14:37 by Mr.Xer, 246 阅读, 0 推荐, 收藏, 编辑
摘要:发布测试的最后一步打包(Archive),Xcode4帮助文档有比较详细介绍,但是居然是错的,这里说明一下。1、设置“Build Settings”,下图是官方文档截图,留意那个红框,居然说反了。"Skip install"一定要选NO,否则在下面的打包步骤后,Organizer看不到你的程序,就为这折腾我好些时间,国外论坛一堆问题,说我按照官方文档做了,怎么Organizer看不到程序。1.1 选择ad hoc证书.在“Code Signing”栏,选择你在文章(“iOS程序发布测试3-生成adhoc证书”)生成的发布证书(ad hoc),如下图,这里要选择“iPhone 阅读全文
上一页 1 2 3 4 5 6 7 8 ··· 16 下一页