2012年6月20日
摘要: 最近开始学习cocos2d,看的是Ray Wenderlich的著作,此人有自己的网站,集结了一批人写ios(现在也有其他平台)上的tutorial。看了前6章,总结一下所学,以备以后温习。2012-06-2017:06:00上图是个人对cocos2d编写游戏所适用到的几个概念。GameScene:游戏场景,比如你的游戏有两个关卡,每个关卡就应该是一个游戏场景。GameLayer:游戏层。游戏场景可以包含若干个层,层的适用可以更容易的控制游戏。比如,游戏背景单独做一个layer,这样和游戏人物layer就不会冲突,也更易于管理。CCSprite:精灵。游戏人物,道具等都可以是精灵。正如电影一样 阅读全文
posted @ 2012-06-20 17:11 scorpiozj 阅读(386) 评论(0) 推荐(0) 编辑
  2012年6月18日
摘要: 作ios开发的经常会遇到一些诸如:修改tabbar/navgation bar背景之类的问题,这些问题看似小,但有时候会占据较多的时间来解决。我把个人在最近项目上遇到的一些tips纪录下来,供以后使用。如有不正确的或是更好的方法,请大家指教。UITextField 在nib文件种,该控件 自动启用return功能启用后的效果是: 如果控件内没有输入,则return不可点。UITableView的响应 tableview所在的父view如果frame比tableview的小,那么,tableview上的点击事件会不响应。 addsubview后,子view的drawrect会调用一次UIT... 阅读全文
posted @ 2012-06-18 11:46 scorpiozj 阅读(592) 评论(0) 推荐(0) 编辑
  2012年5月24日
摘要: 之前lp生病手术,加上项目紧张,有些博友的消息没有回复.主要还是关于Omni的例子,不日整理好后上传到git,供交流学习.下面总结下之前遇到的ios数据存储中的经验总结.5.0以后,用户可以选择将程序备份到icloud,这对沙盒内的数据存储有了新的要求。开启icloud备份后,程序内容可以备份到云端,这样用户数据可以在其他i设备上使用。这样,开发人员在沙盒中存储数据就有讲究了。直接上Apple的文档。下面简单翻译一下。icloud和itunes对以下三个文件夹不会备份:<Application_Home>/AppName.app<Application_Home>/Li 阅读全文
posted @ 2012-05-24 21:47 scorpiozj 阅读(2770) 评论(1) 推荐(1) 编辑
  2012年2月8日
摘要: iCloud的学习主要是Apple的官方文档+devform,常规的操作和流程请参见文档。这里纪录下iCloud开发中自己遇到的问题和需要注意的地方,有不对的地方,欢迎指正,也欢迎大家交流。2012-02-0710:25:241 支持iCLoud功能的应用首先要检测下iCloud是否可用,需要用到-[NSFileManager URLForUbiquityContainerIdentifier:];这个最好在次线程中做,否则有可能会阻塞主线程。这个苹果的文档最近也给出了例子:检测iCloud1 dispatch_async(dispatch_get_main_queue(), ^{2 ... 阅读全文
posted @ 2012-02-08 10:11 scorpiozj 阅读(1178) 评论(1) 推荐(0) 编辑
  2012年2月7日
摘要: 首先这是一个中断的项目(虽然以后个人可能会继续,但在公司层面上已经到此为止了),但是还是完成了相关的内容:读取rtf/rtfd文件,编辑(字体,大小,颜色),添加图片,保存。(至于为什么要选择rtf格式来实现富文本编辑,下面会做说明)在项目过程中还是遇到不小的问题,得到些许收获,因此在这一并纪录下来。2012-02-0616:04:07首先我们得了解RTF是种什么格式,这个可以到微软的网站上取找,或者搜索 “RTFV1.7规范.doc”。规范里面主要是一些控制字,关键字之类的东西,我们需要对一些常见的字符进行解析以保证可以显示大多数格式的rtf文件。在之前的日志里,我提到了OmniGroup的 阅读全文
posted @ 2012-02-07 09:15 scorpiozj 阅读(2891) 评论(5) 推荐(1) 编辑
  2012年2月6日
摘要: 之前尝试做iOS上的RTF编辑器,搜索资料的时候用到了OmniGroup这个库.Omni很多产品都做的很炫,而且价格都很贵.由此可以想象一下Omni的强大.网上开源的部分应该囊括了大部分核心代码,但问题是相应的文档太少,而且去他们的论坛发帖求助,应者寥寥.尽管这个项目最终没有完成,这里还是总结一下.2012-02-0615:27:59首先就是如何添加OmniGroup,项目主页在:https://github.com/omnigroup/OmniGroup。1新建文件夹,将下载的OmniGroup复制过来,然后在xcode中新建一个workspace:RTFWS,然后再添加一个新的工程:RTF 阅读全文
posted @ 2012-02-06 15:30 scorpiozj 阅读(781) 评论(3) 推荐(1) 编辑
  2011年11月15日
摘要: 之前说过GCD中的serial queue是FIFO的执行次序,也就是说你依次添加进queue的任务会按照先后顺序执行完毕.最近在做一个关于iCloud的项目,在更新文件夹内容变化的时候用到了serial queue,处理逻辑如下:- (void)presentedSubitemDidChangeAtURL:(NSURL *)url{ NSDate *currentDate = [NSDate date]; myQueue = NULL; if (myQueue == NULL) { myQueue = dispatch_queue_create([[c... 阅读全文
posted @ 2011-11-15 22:14 scorpiozj 阅读(2491) 评论(0) 推荐(1) 编辑
  2011年11月13日
摘要: 最近在做一个和iCloud有关的项目,主要是做一个客户端,访问iCloud上的文件,诸如:音乐,照片,文档等等.主管项目的是技术出身,边设计产品边coding.作为程序员,我照需求做就是了,但是私底下,我对这个产品深深的吐槽.产品设计者根本没有理解iCLoud的核心,亏着还是个技术人员.下面,就谈谈我对iCloud的理解,也欢迎大家一起探讨,并批评指正.icloud是苹果推出的云服务,它的核心就是可以保存用户的数据(照片,音乐,文档,程序以及设置等等)并在用户的所有设备上(iphone,itouch,mac以及pc)保持同步更新.每位用户都可以免费使用5G存储空间.正是利用这空间,用户可以备份 阅读全文
posted @ 2011-11-13 21:20 scorpiozj 阅读(1230) 评论(2) 推荐(0) 编辑
  2011年10月24日
摘要: iOS引入了Automatic Reference Count(ARC),编译器可以在编译时对obj-c对象进行内存管理。之前,obj-c的内存管理方式称作引用计数,就是obj-c对象每被”使用”一次,引用计数+1,当引用计数为0时,系统会回收内存.用程序语言表达,就是allco的要release,retain/copy的要release.还有某些容器add的,也要release等等.现如今,ARC使你勿需理会这些内存管理规则,但同时一些语法也相应的作了改变,具体有哪些变化我们一一解析.首先新建一个工程(注意Xcode得是4.2),选择使用ARC(如果在新建工程的时候没有选择ARC,随后在些代 阅读全文
posted @ 2011-10-24 13:55 scorpiozj 阅读(4433) 评论(6) 推荐(0) 编辑
  2011年10月10日
摘要: 程序本地化是扩展应用市场的重要砝码.iOS提供了简便的方法来实现本地化,其中用的最多的就是NSLocalizedString.首先查看下NSLocalizedString是什么:#define NSLocalizedString(key, comment) \ [[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil]这是一个宏,本质上是调用了函数 locakizedStrigForKey:.这样,这个宏做的其实就是在当前bundle中查找资源文件名Localizable.strings中键 阅读全文
posted @ 2011-10-10 23:40 scorpiozj 阅读(3815) 评论(0) 推荐(1) 编辑