摘要: 纵观移动市场,一款移动app,要想长期在移动市场立足,最起码要包含以下几个要素:实用的功能、极强的用户体验、华丽简洁的外观。华丽外观的背后,少不了美工的辛苦设计,但如果开发人员不懂得怎么合理展示这些设计好的图片,将会糟蹋了这些设计,功亏一篑。比如下面张图片,本来是设计来做按钮背景的:button.p... 阅读全文
posted @ 2014-06-13 17:47 咪咕咪咕 阅读(165) 评论(0) 推荐(0) 编辑
摘要: UIWebView是一个很常用的视图,一般用来加载网页,比如百度:点击文本框输入框后,会弹出一个带有toolbar的键盘,toolbar中有3个辅助按钮有了这3个按钮,是方便很多,但默认是英文的,有时我们想把按钮文字变为中文其实办法很简单,只需要让你的应用程序支持中文本地化,意思是在项目中新建一个中... 阅读全文
posted @ 2014-06-13 17:45 咪咕咪咕 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 之前介绍CCNode的时候说过,动作是指在特定时间内完成移动、缩放、旋转等操作的行为,节点可以通过运行动作来实现动画效果,这里的动作就是指CCAction对象,它有很多的子类,每个子类都封装了不同的动作效果。先来看看CCAction的继承结构图这里我省略了瞬时动作(CCActionInstant)和... 阅读全文
posted @ 2014-06-13 17:44 咪咕咪咕 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 游戏中经常会提供一些菜单项让用户开始游戏、暂停\继续游戏、打开\关闭音乐或者是返回到上一个界面,比如下面两张图中用红色线框标记的菜单项我们可以使用CCMenu和CCMenuItem实现上述的菜单功能,CCMenu继承自CCLayer,只能添加CCMenuItem为子节点。一个CCMenuItem就可... 阅读全文
posted @ 2014-06-13 17:43 咪咕咪咕 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 在介绍CCSprite之前,先要理解游戏开发中的一个核心概念:精灵。精灵也称为游戏对象,它可以用来表示游戏中的任何物体,比如敌人、子弹、甚至是一个背景图片、一段文字。CCSprite可以说是在cocos2d中最常用的一个类,可以称之为"精灵类",它能够以图片的形式将精灵显示到屏幕上。创建精灵在谈怎么... 阅读全文
posted @ 2014-06-13 17:42 咪咕咪咕 阅读(141) 评论(0) 推荐(0) 编辑
摘要: CCScene一般情况是游戏里面的根节点,称之为"场景",运行游戏时需要通过CCDirector启动第一个场景。当然,游戏稍微复杂一点的话,可能会包含很多个场景,这就涉及到场景的切换,也是通过CCDirector来完成。CCScene是个抽象的概念,也没有可视化显示的功能,对比CCNode,CCSc... 阅读全文
posted @ 2014-06-13 17:41 咪咕咪咕 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 一个游戏中可以有很多个场景,每个场景里面又可能包含有多个图层,这里的图层一般就是CCLayer对象。CCLayer本身几乎没什么功能,对比CCNode,CCLayer可用于接收触摸和加速计输入。其实,cocos2d对图层并没有严格的要求,图层不一定要使用CCLayer类,它也可以是一个简单的CCNo... 阅读全文
posted @ 2014-06-13 17:40 咪咕咪咕 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 本将主要介绍下CCNode这个类,CCNode是所有节点的基类,其中包括我们常用的CCScene(场景)、CCLayer(图层)、CCSprite(精灵)等,它是一个不能够可视化显示的抽象类,只是用来定义所有节点的公共属性和方法的。本讲纯粹是理论。首先来看看CCNode的继承结构图,只列举了常用的类... 阅读全文
posted @ 2014-06-13 17:39 咪咕咪咕 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不... 阅读全文
posted @ 2014-06-13 17:38 咪咕咪咕 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 一、简介一个NSOperation对象可以通过调用start方法来执行任务,默认是同步执行的。也可以将NSOperation添加到一个NSOperationQueue(操作队列)中去执行,而且是异步执行的。创建一个操作队列:[java]view plaincopyNSOperationQueue*q... 阅读全文
posted @ 2014-06-13 17:37 咪咕咪咕 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 一、简介在iOS所有实现多线程的方案中,GCD应该是最有魅力的,因为GCD本身是苹果公司为多核的并行运算提出的解决方案。GCD在工作时会自动利用更多的处理器核心,以充分利用更强大的机器。GCD是Grand Central Dispatch的简称,它是基于C语言的。如果使用GCD,完全由系统管理线程,... 阅读全文
posted @ 2014-06-13 17:35 咪咕咪咕 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境。在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置。我们首先来看下,如何在Mac环境下搭建svn服务器端环境。创建代码仓库,用来存储... 阅读全文
posted @ 2014-06-13 17:33 咪咕咪咕 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 这篇文章是专门用来记录开发中一些常见的BUG以及常用的零碎知识点,我会隔一段时间更新内容1.重复调用2次loadView和viewDidLoad最好不要在UIViewController的loadView方法中改变状态栏的可视性(比如状态栏由显示变为隐藏、或者由隐藏变为显示),因为会导致重复调用2次... 阅读全文
posted @ 2014-06-13 17:32 咪咕咪咕 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 前言每个iOS应用程序都有个专门用来更新显示UI界面、处理用户触摸事件的主线程,因此不能将其他太耗时的操作放在主线程中执行,不然会造成主线程堵塞(出现卡机现象),带来极坏的用户体验。一般的解决方案就是将那些耗时的操作放到另外一个线程中去执行,多线程编程是防止主线程堵塞,增加运行效率的最佳方法。iOS... 阅读全文
posted @ 2014-06-13 17:31 咪咕咪咕 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 1.上一讲简单介绍了NSThread的使用,虽然也可以实现多线程编程,但是需要我们去管理线程的生命周期,还要考虑线程同步、加锁问题,造成一些性能上的开销。我们也可以配合使用NSOperation和NSOperationQueue实现多线程编程,实现步骤大致是这样的:1> 先将需要执行的操作封装到一个... 阅读全文
posted @ 2014-06-13 17:30 咪咕咪咕 阅读(180) 评论(0) 推荐(0) 编辑