Я так много работал над приложением, которое отлично отображается на моей галактической ноте 3. Однако оно не отображается прямо на iPhone, а также на одном другом Droid, на котором я тестировал. Моя проблема связана с addChild() и затем изменяет ее размер, чтобы соответствовать экрану. По какой-то причине, когда я добавляю Background (addBG(); размер экрана работает, но если я загружаю addChild в BG, это отлично работает на моей заметке 3, но не на iPhone или другом устройстве Android.as3 проблема с выпуском и размером экрана и размера экрана на устройствах
Моя проблема с screenX, screenY var, которые я создал, они кажутся разными для устройств. Или это «проблема с порядком вывода», я не уверен. Было бы очень полезно помочь устранить эту проблему, чтобы она выглядела отлично на каждом телефоне. Я прочитал несколько статей по этому вопросу, но они сбивают с толку. Я думаю, что мой код близок, я надеюсь, и, возможно, он просто нуждается в настройке.
Вот снимок экрана на IPhone. белый не подходит для всего экрана.
и Вот снимок из моей Droid Примечание 3.
Заявленный Варс в упаковке:
Это не мой полный код, конечно, но только то, что я считаю уместным.
public var screenX:int;
public var screenY:int;
public function Main()
{
if (stage)
{
setStage();
addBG();
}
}
public function setStage()
{
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
if (flash.system.Capabilities.screenResolutionX > stage.stageWidth)
{
screenX = stage.stageWidth;
screenY = stage.stageHeight;
}
else
{
screenX = flash.system.Capabilities.screenResolutionX;
screenY = flash.system.Capabilities.screenResolutionY;
}
}
Это работает: addBG();
public function addBG()
{
theBG = new BG();
addChild(theBG);
theBG.width = screenX;
theBG.height = screenY;
}
Это не: addAbout();
public function addAbout()
{
About = new viewAbout();
About.width = screenX;
About.height = screenY;
theBG.addChild(About);
TweenMax.fromTo(About,1, {alpha:0}, {alpha:1, ease:Expo.easeOut} );
}
ОБНОВЛЕНИЕ: И еще одна более сложная нагрузка также вызывается с помощью кнопки и имеет ту же проблему. Надеюсь, вы видите логику того, что я пытаюсь сделать. Сначала установите BG на устройство, затем загрузите и измените размер содержимого, чтобы оно пропорционально соответствовало загружаемому BG. Причина в том, что BG будет искажен в разных пропорциях, и это нормально, но контент не может. Итак, вот пример, который загружает контент в BG, а затем содержимое в этот контейнер.
public function addRosaryApp()
{
Rosary = new viewRosaryApp();
Rosary.width = screenX;
Rosary.height = screenY;
theBG.addChild(Rosary);
TweenMax.fromTo(Rosary,1, {alpha:0}, {alpha:1, ease:Expo.easeOut} );
contentRosary = new contentRosaryApp();
theBG.addChild(contentRosary);
contentRosary.width = screenX;
contentRosary.scaleY = contentRosary.scaleX;
contentRosary.x = screenX/2 - contentRosary.width/2;
contentRosary.y = menuBanner.height;
}
Получаете ли вы правильные значения для iphone, если вы отслеживаете свой экран X/screenY? – Fygo
Да, его как 600 на 900 или что-то я забыл. Его iphone 4s. Он работает для BG и подходит для экранирования. Так что, может быть, это проблема с загрузкой, о которой я думаю, или iPhone не всегда видит значения screenX и ScreenY. –
Вам следует использовать stage.fullscreenWidth, fullscreenHeight. Разве это имеет значение? – Fygo