0

我正在考虑更新我的应用程序以利用 iphone5 的更大屏幕,但不知道如何实现这一点是 as3。

我在网上尝试了一些建议,但无法让它们发挥作用。该应用程序可以正常工作并且看起来很好,没有修改,只是顶部和底部的信箱。

这是我的代码:

var stageWidth:int   = Constants.STAGEWIDTH; // Hardcoded to 320
var stageHeight:int  = Constants.STAGEHEIGHT; // Hardcoded to 480
var screenWidth:int  = stage.fullScreenWidth;
var screenHeight:int = stage.fullScreenHeight;

Constants.FULLSCREENWIDTH = stage.fullScreenWidth;
Constants.FULLSCREENHEIGHT = stage.fullScreenHeight;

var iOS:Boolean = Capabilities.manufacturer.indexOf("iOS") != -1;
Starling.multitouchEnabled = false;
Starling.handleLostContext = true; 

var viewPort:Rectangle =  new Rectangle(0, 0, stage.fullScreenWidth, stage.fullScreenHeight);
var startupImage:Sprite = createStartupImage(viewPort, screenWidth > 320);

非常感谢!

4

1 回答 1

0

将名为 Default-568h@2x.png 的启动图像添加到包中。此启动图像的分辨率应为 1136*640 像素。如果您已经为启动图像使用了命名空间模式,则只需将“-568h@2x”附加到命名空间模式即可。

取自 http://blogs.adobe.com/airodynamics/2012/11/07/deploying-air-apps-on-iphone-5/

此外,starling 上的 stageWidth 现在将是 568,而不是像 3.5" 屏幕中的 480

现在尝试对其进行硬编码。

var screenWidth:int  = 640;
var screenHeight:int = 1136;
var viewPort:Rectangle = new Rectangle(0, 0, screenWidth, screenHeight)

starling = new Starling(Game, stage, viewPort);
starling.stage.stageWidth  = 320;
starling.stage.stageHeight = 568;

如果这有效,则意味着您从 stage.stageWidth 中获取了错误的 stageWith 和 stageHeight。

在这里您可以看到如何正确获取 stageView 和 stageHeight 但这是不同的主题

http://forums.adobe.com/message/3712344

于 2013-10-25T20:47:03.647 回答