




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
书面作业写至A4纸上,下周五交。操作题:1、 Android开发环境安装,能跑Hello World。(见“在线安装”文件夹)。2、为了进一步熟悉Android模拟器,通过命令行方式启动模拟器,并在模拟器中尝试使用各种功能和应用软件。命令行方式启动模拟器的方法是在/tools目录中,输入命令emulator data test即可。3、浏览Android SDK帮助文档。4、尝试建立一个支持Google APIs的AVD。5、疯狂Android讲义。(疯狂Android讲义电子图书以下页码+14)2.1.2 使用XML布局文件控制UI界面 P402.1.3 在代码中控制UI界面 P41P41 实例:用编程的方式开发UI界面2.1.4 使用XML布局文件和Java代码混合控制控制UI界面 P42 P42 实例:简单图片浏览器2.2.1 线性布局 P47 相关示例2.2.3 帧布局 P52 相关示例 实例:银红灯效果 P532.2.4 相对布局 P55 相关示例2.3.1 文本框与编辑框 P60 相关示例2.3.2 按钮与图片按钮 P66 相关示例书面作业:1、 iphone程序的生命周期是怎样的?试举例加以说明。iPhone应用程序是由主函数main启动,它负责调用UIApplicationMain函数,该函数的形式如下所示:int UIApplicationMain (int argc,char *argv, NSString *principalClassName, NSString *delegateClassName);那么UIApplicationMain函数到底做了哪些事情呢?这个函数主要负责三件事情: 1)从给定的类名初始化应用程序对象,也就是初始化UIApplication或者子类对象的一个实例,如果你在这里给定的是nil,那么系统会默认UIApplication类,也就主要是这个类来控制以及协调应用程序的运行。在后续的工作中,你可以用静态方法sharedApplication 来获取应用程序的句柄。 2)从给定的应用程序委托类,初始化一个应用程序委托。并把该委托设置为应用程序的委托,这里就有如果传入参数为nil,会调用函数访问 Info.plist文件来寻找主nib文件,获取应用程序委托。 3)启动主事件循环,并开始接收事件。上面是UIApplicationMain函数的工作,接下来一个问题是应用程序视图的显示、消息的控制怎么办?下面就是UIApplication(或者子类)对象的职责,这个对象主要做下面几件事: 1)负责处理到来的用户事件,并分发事件消息到应该处理该消息的目标对象(sender, action)。 2)管理以及控制视图,包括呈现、控制行为、当前显示视图等。 3)该对象有一个应用程序委托对象,当一些生命周期内重要事件(可以包括系统事件或者生命周期控制事件)发生时,应用程序通知该对象。例如,应用程序启动、内存不够了或者应用程序结束等,让这些事件发生时,应用程序委托去响应。 通过上面的分析,可以知道UIApplication对开发者来说,是一个黑箱。因为所有的操作,都可以由它的委托来帮我们完成,它只需要在后面维护一些不可更改的东西,如事件消息分发和传递、给委托发送事件处理请求等等,如:应用程序加载处理完毕,它会发送消息给委托,然后委托可以在 applicationDidFinishLanching委托函数中去实现开发者想要的动作。 利用XCODE在创建应用程序时,会默认实现一个应用程序委托类。而对于加载的视图,则有视图相关的委托类来处理视图加载过程的生命事件。2、Cocos2d-x的启动流程是怎样的?第一个场景HelloWorldScene是如何创建和运作的?试举例加以说明。首先,在main.cpp中会先执行 AppDelegate app; CCEGLView* eglView = CCEGLView:sharedOpenGLView(); /设置窗口名 eglView-setViewName(Hoooooo); /设置窗口大小 eglView-setFrameSize(480, 320); int ret = CCApplication:sharedApplication()-run(); 随后运行 bool AppDelegate:applicationDidFinishLaunching() /初始化设置导演 CCDirector *pDirector = CCDirector:sharedDirector(); pDirector-setOpenGLView(CCEGLView:sharedOpenGLView(); /开启FPS模式 pDirector-setDisplayStats(true); /设置FPS. 默认是60帧 pDirector-setAnimationInterval(1.0 / 60); /创建一个场景 把HelloWorld的场景指针指向来 / / 在类HelloWorldScene.h中 HelloWorld 写了 static cocos2d:CCScene* scene();用于来 得到场景指针。 / / HelloWorld本身继承了cocos2d:CCLayer 在 HelloWorldScene.cpp的 HelloWorld:scene()的实现中,HelloWorld本身就添加到场景中通过: / HelloWorld *layer = HelloWorld:create(); / scene-addChild(layer); / / 其中layer是一个自动释放的对象,原因在于HelloWorld:create();就在是 CREATE_FUNC(HelloWorld);中定义的. / 宏CREATE_FUNC(_TYPE_)会设置其自动释放内存,方便内存管理,不需要手动去释放 / / CCScene *pScene = HelloWorld:scene(); /导演运行这个场景 pDirector-runWithScene(pScene); return true; 下来的添加操作就是在HelloWorld的这个layer图层中进行的了。1)定义一个场景类实例。Cocos2D-x引擎中的HelloWorld范例中,HelloWorldScene.cpp中的scene函数即是新建场景的地方,如代码清单3-9所示。代码清单3-9HelloWorld新建场景类实例CCScene* HelloWorld:scene() /新建场景类实例 CCScene *scene = CCScene:create(); /CCScene *scene = CCScene:node(); /定义布景层 HelloWorld *layer = HelloWorld:create(); /将布景层加入场景 scene-addChild(layer); /返回场景类 return scene;通过create方法构造一个场景,当然,create函数是Cocos2D-x 2.0以后的版本 才有的方式,2.0之前的版本采用的是后面被注释掉的方法,然后将定义的布景层作为子项加入场景中,要显示的成员都在布景层中。至于布景层的定义,将在后面做介绍。2)获得并运行场景。在游戏入口AppDelegate类中的applicationDidFinishLaunching函数中调用上一步定义的方法,并使用导演类的runWithScene方法运行场景,如代码清单3-10所示。代码清单3-10获得并运行场景bool AppDelegate:applicationDidFinishLaunching() / 初始化导演类 CCDirector *pDirector = CCDirector:sharedDirector(); /设置OpenGL视图 pDirector-setOpenGLView(&CCEGLView:sharedOpenGLView(); /设置是否显示每帧时间 pDirector-setDisplayStats(true); /设置每帧时间 pDirector-setAnimationInterval(1.0 / 60); /创建场景 CCScene *pScene = HelloWorld:scene(); /运行场景 pDirector-runWithScene(pScene); return true;到这里已经可以新建一个场景并把它加入游戏中了。在各个平台上面都是这样,比如android,是通过在一个activity(继承自cocos2dactivity),中开始进入c接口,然后开始通过代理加载。3、创建CCSprite精灵常用的4种方式是什么?试举例加以说明。IOS游戏编程从零开始 P234、CREATE_FUNC(_TYPE_)宏是如何使用的?试举例加以说明。1)定义一个场景类实例。Cocos2D-x引擎中的HelloWorld范例中,HelloWorldScene.cpp中的scene函数即是新建场景的地方,如代码清单3-9所示。代码清单3-9HelloWorld新建场景类实例CCScene* HelloWorld:scene() /新建场景类实例 CCScene *scene = CCScene:create(); /CCScene *scene = CCScene:node(); /定义布景层 HelloWorld *layer = HelloWorld:create(); /将布景层加入场景 scene-addChild(layer); /返回场景类 return scene;通过create方法构造一个场景,当然,create函数是Cocos2D-x 2.0以后的版本 才有的方式,2.0之前的版本采用的是后面被注释掉的方法,然后将定义的布景层作为子项加入场景中,要显示的成员都在布景层中。至于布景层的定义,将在后面做介绍。2)获得并运行场景。在游戏入口AppDelegate类中的applicationDidFinishLaunching函数中调用上一步定义的方法,并使用导演类的runWithScene方法运行场景,如代码清单3-10所示。代码清单3-10获得并运行场景bool AppDelegate:applicationDidFinishLaunching() / 初始化导演类 CCDirector *pDirector = CCDirector:sharedDirector(); /设置OpenGL视图 pDirector-setOpenGLView(&CCEGLVie
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阅读节活动策划方案范文(3篇)
- 线上促销活动赠品方案策划(3篇)
- 弧形铝板施工方案(3篇)
- 镜面墙壁施工方案(3篇)
- 砂砾石隧洞施工方案(3篇)
- 培训会活动宣传方案策划(3篇)
- 郫县电梯加装施工方案(3篇)
- 中职旅游考试题库及答案
- 地铁安检考试题库及答案
- 安徽省马鞍山市和县2024-2025学年高三下学期高考二模历史试题含参考答案
- 神经科护士的疼痛管理和舒适护理
- 2020输变电工程通用设计35~110kV输电线路站分册
- 软件管理系统产品报价单模板(详细)
- FIDIC国际合同条款中英文对照
- 托盘车充电安全操作规程
- 教学设备安装调试方案投标方案
- 医院诊断证明书word模板
- 人教版六年级语文上册说教材课件
- 《汽车美容》课件-单元二 汽车清洗
- 范里安微观经济学现代观点原版讲义
- 第五版-FMEA-新版FMEA【第五版】
评论
0/150
提交评论