Flash: Stage.fullscreeninteractive -> الفرق إذا الفصل أو الإطار الأول
-
18-09-2019 - |
سؤال
مثال 1: 1st الإطار الخاص بي
var screenBounds = Screen.mainScreen.bounds; //Bounds of current screen
var full:Sprite = new Sprite(); //Sprite Fullscreen
//Enter Fullscreen
function goFullScreen(e:Event = null) {
//myClass.goFullscreen();
full.graphics.clear();
full.graphics.beginFill(0xccff00);
full.graphics.drawRect(0,0,screenBounds.width, screenBounds.height);
full.graphics.endFill();
addChild(full);
this.stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE;
}
مثال 2: عادي كحزمة فئة
private var full:Sprite = new Sprite(); //Sprite to show fullscreen
private var screenBounds = Screen.mainScreen.bounds; //Bounds of current screen
public function favoritesFullscreen():void {
full.graphics.clear();
full.graphics.beginFill(0xccff00);
full.graphics.drawRect(0,0,screenBounds.width, screenBounds.height);
full.graphics.endFill();
addChild(full);
this.stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE;
}
إذن اخبرني أين الفرق؟ أنا ماكوليك، كما تعلمون، في أعلى menubar وفي حالتي يتم محاذاة الرصيف اليسار
إنه غريب ولكنه مثال 1 يفعل بالضبط ما يجب عليه. يقوم بإنشاء مستطيل ملء الشاشة عبر الشاشة بأكملها (من 0،0 إلى أسفل اليمين)
ومع ذلك، مثال على ذلك نوع من حساب عرض أعلى menubar ورصيف ويبدأ مستطيل ملء الشاشة حوالي 40 بكسل من الحافة اليسرى للشاشة (قفص الاتهام) و 20px من الأعلى (menubar) ... أنا لا الحصول على لماذا يتغير الطبقة الخارجية مختلفة عن الإطار الأول.
؟؟؟ شكرا لك على مساعدتك!
المحلول
أعتقد أن الأمر يتعلق به عندما يتم استرجاع الشاشة. عند ترجمة الوقت، يتحرك فلاش داخليا جميع رمز الإطار داخل الوظائف في Documentclass واتصل بها بعد تهيئة المرحلة بالكامل. لذلك، في المثال الأول، تقوم باسترداد شاشة Screens بعد أن يتم تهيئة كل شيء، ولكن في المثال الثاني الذي تقوم به في وقت سابق بكثير.
أعتقد أن انتظار الحدث المضافة_Stage سيكون كافيا. إذا لم تكن كذلك، فإن أول حدث Enter_Frame يجب أن يعمل بالتأكيد.