摘要: 规范上说NSString用copy比较安全,我试验了一下,总结如下: NSString 的copy和retain效果一样,而且copy和retain出来的对象的内存地址也和源地址一样,而不是理论上copy应该开辟新地址那样,猜测原因应该是系统做了优化,因为NSString本身就不可变,所以copy没必要开辟新地址,浪费空间,这就跟NSString常量都共用一个内存地址一个道理, NSString的mutableCopy会开辟新内存地址。 NSMutableString的copy和retain效果不一样,copy会开辟新的内存地址,原因很简单,因为NSMutableString可变,当然... 阅读全文
posted @ 2014-04-10 11:03 ShadowFlyer 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 今天做了一个ScrollView的小例子(我的环境Xcode5.0.2 IOS7),结果发现无法滚动,即使设置了scrollView的contentSize还是不行,于是研究了一番,最终找到了解决方案:在ios6之前,因为Xcode没有Autolayout的机制,所以直接使用scrollView,设置它的contentSize即可正常滚动在ios6之后,因为Xcode引入了Autolayout的机制,所以我们设置的contentSize被修改为适合屏幕大小的值,也就是说自适应啦,因此无法滚动,解决方案如下:直接去掉scrollView的Autolayout即可,但是这种方式不完美,毕竟Au.. 阅读全文
posted @ 2013-12-25 18:52 ShadowFlyer 阅读(2908) 评论(0) 推荐(0) 编辑
摘要: 关于屏幕旋转的问题:iOS6之后- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation{ return UIInterfaceOrientationIsLandscape(toInterfaceOrientation);}这个方法废弃啦,取而代之的是这俩个组合:- (BOOL)shouldAutorotate{ return YES; //ios6之前默认为NO,ios6之后默认为YES}- (NSUInteger)supportedInterfaceOrien. 阅读全文
posted @ 2013-12-24 01:27 ShadowFlyer 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 这篇不是什么教程。Cocoa autolayout出来蛮久了。以前多次想去深入研究一下,每次都很蛋疼无序。这东西是在有些搞。尤其习惯了code写布局的。看到Visual format language,简直要掀桌子。搜教程,满世界都是,没有一个讲得透彻的。例子空洞。你们就只会3个控件横向布局对法?浑浑噩噩看了多篇。有了点总结。槽不多吐了。简单讲讲。零.Autolayout,开始于iOS6.0一.什么时候用autolayout比较适合1.不负责任的骑墙派说法:apple的设备越来越多了,你的应用应该都使用al。(并且用sb)2.要看应用内容决定。如果你的内容是信息众多,同时需要展示的类别也很多, 阅读全文
posted @ 2013-12-24 01:01 ShadowFlyer 阅读(138) 评论(0) 推荐(0) 编辑
摘要: ARC可谓iOS开发中一大利器,内存管理的大部份问题都能交由系统自动处理了,不过一些不太明显的小坑也需我们多加注意,不然用户在使用中出现闪退,那用户体验就差多了。最近看了@易飞扬 先生一系列关于ARC的博文,觉得非常详细易懂,可惜需要FQ才能看到,所以转载到这里,同时对原文内容进行了一些小修改,再次感谢易先生的分享 :P内存管理依循下面的基本原则:自己生成的对象,那么即是其持有者不是自己生成的对象,也可成为其持有者(一个对象可以被多个人持有)如果不想持有对象的时候,必须释放其所有权不能释放已不再持有所有权的对象ARC使用准则:不能使用 retain/release/retainCount/au 阅读全文
posted @ 2013-12-24 00:43 ShadowFlyer 阅读(693) 评论(0) 推荐(0) 编辑
摘要: 大家应该都知道@代表“Objective-C”的标志,证明您正在使用Objective-C语言,可面对property及synthesize却十分头痛,对于初入iphone开发之路。就拿我自己来说吧,最初学Objective-C时,根本不晓得@property还有@synthesize有什么作用,为什么要加这两个东东,这两个东东到底用来干嘛了,脑里是一头雾水。心里是空空如也,后面慢慢理解了,看了书后就更清楚了。总算心里有底了。现在为了新手们不要走我老路,不要像我以前那般痛苦,偶这两 者关系写出来。已便你们清醒。(说了,只对新手,,,NB大哥们请绕道走哇。。不要笑话,也不要打击我,偶先说明偶是好 阅读全文
posted @ 2013-12-24 00:14 ShadowFlyer 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 学习新的一门语言或者技术,入门非常重要,好的资源更加重要,下面我推荐一些自己在学习ios开发过程中用到的好的教程和网站: 1.Start Developing iOS Apps Today(Apple Developer官方文档,经典之作,入门必读,讲解配合例子,英文版,但是基本都是常用单词,阅读难度还行,强烈推荐,还可以下载PDF版本珍藏,130多页) 2.从今天开始学习IOS开发(读完了英文版的再看看中文版的,对比消化一下) 3.你的第一个IOS应用(一个比较好的中文版IOS之hello world) 4.斯坦福大学公开课(网易公开课,Paul Hegarty讲的iPad和iP... 阅读全文
posted @ 2013-12-23 23:15 ShadowFlyer 阅读(2166) 评论(0) 推荐(1) 编辑
摘要: 最近在学习IOS开发,新装了Xcode5,网上找了一些学习教程,发现里面大多数用的是Xcode4.x的版本,操作各方面与Xcode5略不同,对于我这样的新手来说本来就要学习语言,现在又要额外学习Xcode工具,感到有些压力,于是上网查找Xcode5兼容低版本的一些办法,网上说法各种都有: 1.安装两个版本Xcode的(那要是Xcode再升级了呢,继续安装?显然不是一劳永逸的办法) 2.下载低版本的Xcode,然后拷贝sdk 和simulator到新版本Xcode对应的目录(感觉跟方法1差别不大,始终觉得不爽) xxxxx还有类似的其他办法,我都觉得不是非常方便,我就在想苹果公司如此注... 阅读全文
posted @ 2013-12-21 03:48 ShadowFlyer 阅读(783) 评论(0) 推荐(0) 编辑