Himi 原创,转载请注明!
原文地址:http://blog.csdn.net/xiaominghimi/article/details/6748372
最近书已经进入印刷了,预订签名的童鞋没想到会上三位数,非常感谢大家一如既往的支持与鼓励;
今天为大家介绍利用cocos2d开发中一些细节的三个问题;
首先介绍第一点:如何开启高清模式,大家都知道iphone4的分辨率是960*640,比之前的480*320正好大了一倍,那么如果想测试在高清模式下的游戏效果的话,那么首先大家肯定知道先设置iOS模拟器为iphone(Retina)模式,但是仅仅设置这里的童鞋肯定会发现问题,因为运行后会发现控制台打印出来的分辨率仍然是480*320,这样设置后只是让模拟器体积放大一倍,但是分辨率照旧没变,其实这是因为cocos2d引擎的问题,你既然使用cocos2d引擎就应该知道当程序一运行后整个控制权都交给了cocos2d,那么设置高清模式也应该从cocos2d中进行设置开启;开启方法很easy,
首先打开你的 AppDelegate.m(这里我用的cocos2d1-1.0.0版本默认创建cocos2d项目自动生成的类);OK,然后手动搜下如下代码:
- [director enableRetinaDisplay:YES]
OK,搜到的代码完整如下;
没错,这几行被注释掉了,OK,将注释去掉,完成开启高清模式;将iOS模拟器设置为iphone(Retina),然后再运行一下项目,分辨率就成了960*640;
OK,紧接着要说图片适配的问题:
做iOS的童鞋们在iOS4之前都应该没有所谓适配的概念(抛开ipad不说),那么如今iOS4出来了,iphone就有了分辨率大小之分,那么程序中所用的图片也对应
需要进行设计;其实apple早已为开发者考虑到了,所以提供了很方便的方式:
假设你程序中使用了icon.png这张图,那么为了能适配所有的机型,那么你需要在你的项目中为icon.png添加一个高清的版本,@2x,“icon@2x.png”,那么在程
序在iphone4中进行运行的时候就会自动索引@2x的对应图片,那么对此Himi要提醒重要的一点:
以上@2x的方式是抛开cocos2d,单单说的iOS的系统API,那么如果在cocos2d中使用的图片也类似需要添加一个高清的版本,-hd,“icon-hd.png”;这里一定不能
搞错;
最近申请IPD可谓困难重重,不过这几天就应该申请下来了;这几天里也购买了一个图片打包工具“TexturePacker”,做cocos2d的肯定不陌生,没错,此编辑器主要的作用就是将大部分图片打包,省包大小、省运行内存、提高运行效率等优点,这里不详细介绍,大家可以自行百度下;那么这里说下"TexturePacker"有二个很重要的功能,其一是自动为你的图片打包之余添加一个@2x或者-hd版本的图片包提供适配使用,其二是能将图片打包成pvr、与pvr.ccz格式,相当好用,此工具这里Himi推荐,$19+ 不算贵;(但是提醒大家购买的时候一定要使用$进行支付,因为人家不要RMB,害得好多次购买失败,悲剧);
这里顺便再推荐两款编辑器,(Himi正在购买中)
1. ParticleDesigner(粒子特效编辑器)http://particledesigner.71squared.com/
2.physicsEditor(物理编辑器)http://www.physicseditor.de/features/
那么闲话不多说了,关于推荐的编辑器大家应该很熟悉了,不熟悉的可以自定打开连接,下面讲解如何设置iphone运行程序横竖屏问题;
cocos2d引擎中默认是横屏,在1.0.0版本中框架有所变化,所以这里我讲解的设置方法是针对cocos2d -1.0.0版本而言的;
打开 RootViewController.m ,然后所有搜索如下代码:
- UIInterfaceOrientationIsLandscape
然后看到的完整代码如下:
- #elif GAME_AUTOROTATION == kGameAutorotationUIViewController
-
-
-
-
-
-
-
- return ( UIInterfaceOrientationIsLandscape( interfaceOrientation ) );
将最后return的修改成如下代码即可竖屏:
- return ( UIInterfaceOrientationIsPortrait( interfaceOrientation ) );
OK,此章节先介绍到这里,
分享到:
相关推荐
在Android应用开发中,横竖屏适配是一个重要的环节,尤其在用户交互丰富的应用中更为关键。Android Studio作为官方推荐的集成开发环境,提供了便捷的方式来处理这个问题。本篇将详细介绍如何在Android Studio中通过...
本Demo名为“纯代码横竖屏适配”,专注于通过编程方式解决iPad的屏幕旋转问题。在这个项目中,我们将深入探讨如何使用Swift语言和UIKit框架来实现在横竖屏之间的无缝切换。 首先,理解iOS中的屏幕方向管理至关重要...
"IOS适配横竖屏,适配所有机型"的标题和描述暗示了本文将深入探讨如何在iOS应用中实现对不同屏幕方向(横屏和竖屏)以及各种设备型号(如iPhone 6)的支持。以下是对这一主题的详细解释: 1. **屏幕方向适配**: -...
在iOS开发中,横竖屏适配是一项至关重要的任务,特别是在设计用户界面和优化用户体验时。随着iPhone设备的广泛使用,用户在不同场景下切换横竖屏已经成为常态,因此开发者必须确保应用程序能在不同屏幕方向下正常...
- 例如,在`AndroidManifest.xml`文件中为某个Activity添加`android:screenOrientation="portrait"`表示竖屏模式,`android:screenOrientation="landscape"`表示横屏模式。 示例代码如下: ```xml android:name...
在日常使用中,我们通常会遇到手机自动或手动切换横竖屏的需求,特别是在观看电影或游戏时,横屏模式能提供更宽广的视野。以下是一些关于火山应用横竖屏切换的详细知识点: 1. **系统默认设置**: 安卓系统通常会...
综上所述,将基于MTK平台的手机应用从默认的竖屏模式切换到横屏模式,需要修改`AndroidManifest.xml`文件,使用代码动态控制,以及适配MTK平台的特性。同时,考虑用户体验和设备兼容性是至关重要的。通过这些方法,...
本教程将深入探讨如何将ZXing 3.2版本从默认的横屏模式改为竖屏模式,并保持良好的用户体验,同时保证识别速度。 首先,我们需要理解ZXing的扫描界面为何默认为横屏。这是因为横屏模式通常可以提供更广阔的视野,...
标题“zxing 竖屏完美解决”指的是在使用ZXing库时,针对Android设备竖屏模式下,二维码图片显示和处理的一个优化问题。在某些情况下,当设备处于竖屏模式时,二维码的显示可能会受到影响,例如大小不适应屏幕或者...
总结,cocos2d-x-2.2.3在Android上的横竖屏自动切换涉及了配置文件修改、代码控制、资源适配、物理世界调整以及多设备测试等多个方面。理解并掌握这些要点,可以帮助开发者提供更优秀的用户体验,同时提升游戏的兼容...
这个工具主要是针对640*960像素分辨率的图片进行自动转换,将其优化为320*640像素,以适应iPhone 5/5s/SE等屏幕尺寸。这个过程涉及到图像处理和移动应用开发的相关知识点,下面将详细阐述这些领域。 1. 图像处理: ...
- 可能会有一个`rotate`方法,手动处理特定情况下需要强制旋转的情况,例如在横屏模式下启动特定功能。 - 在`AppDelegate.m`文件中,可能会有对屏幕旋转事件的监听和处理,以确保应用整体的响应。 通过分析`ObjectC...
综上所述,要实现“竖屏转横屏的Activity切换效果”,开发者需要掌握屏幕方向的控制、动画的创建与应用、生命周期管理以及资源适配等技术,同时,对Android系统的行为有深入理解,才能确保用户在横竖屏切换时获得...
当我们需要在横屏模式下使用tableView时,可能会遇到一些不同于竖屏的挑战,比如布局调整、数据加载和显示等问题。本文将详细讲解如何在横屏下正确地使用tableView,以及涉及的相关技术。 1. **屏幕方向检测** 在...
在Android应用开发中,SurfaceView是一种特殊的视图,它提供了直接与硬件图形渲染管道交互的能力,常用于视频播放、游戏等高性能图形需求的场景。在处理视频播放时,特别是涉及横竖屏切换和屏幕适配时,开发者需要...
对于横屏和竖屏模式,可能需要针对不同屏幕尺寸和方向进行适配。优化包括调整扫描框大小、改善光线处理、减少扫描延迟等。调试过程中,需要注意处理各种异常情况,如相机无法打开、二维码检测失败等。 7. **安全与...
标题"ios全局竖屏部分横屏"指的是在iOS应用中,大部分场景保持全局竖屏显示,而某些特定的界面可以切换到横屏模式。描述中提到的“支持delegate设置,内含tabbar和nav设置”是指通过委托协议(Delegate)来控制界面...
综上所述,这个示例项目提供了在竖屏模式下正确显示和处理摄像头预览、拍照和视频录制的解决方案,同时确保在PC端查看时保持预期的方向。开发者可以通过分析解压后的“zdyCamera”文件,学习和理解上述各个步骤的...
### JS 判断iPad、Android等移动设备横竖屏的知识点 #### 一、概述 本文将详细介绍如何通过JavaScript(简称JS)来判断iPad、Android等移动设备当前处于横屏还是竖屏状态。此方法适用于Web应用开发场景下,对用户...
例如,如果一个应用只想在横屏模式下运行,可以在`UIViewController`的子类中这样实现: ```swift override var shouldAutorotate: Bool { return true // 允许自动旋转 } override var ...