全屏模式,我在這個Flex應用程序中一直在爭鬥一段時間,而且我在Google搜索結果中短暫地結束了我的困境。我通過Application.application.stage.displayState = StageDisplayState.FULL_SCREEN;
進入全屏模式沒有任何問題,但其餘內容只位於原始大小的左上角。將Flex應用程序擴展到全屏的正確方法是什麼?
好吧,我說,我只是做一個stage.scaleMode = StageScaleMode.SHOW_ALL
,並使它弄清楚如何實現這一點。它看起來像它。除了當您將鼠標放在單獨的複選框和按鈕以及各種組件上時,它們全部都是,而且它們的顯示效果稍微有些偏差。當他們調整大小時,只是輕微跳躍或上升... 在鼠標上方。那麼,這是令人沮喪的,但可以承受。我總是可以明確調用invalidateSize()
。
但是對於組合框。底部的菜單從屏幕底部離開,當我跳出全屏模式時,它們的下拉菜單將被切斷。我不知道如何修復那。有人能夠進入這裏,讓我擺脫苦難嗎?
將Flex應用程序擴展到全屏的正確方法是什麼?
var button:Button = button_fullscreen;
try {
if(stage.displayState == StageDisplayState.FULL_SCREEN) {
Application.application.stage.displayState = StageDisplayState.NORMAL;
button.label = "View Fullscreen Mode";
stage.scaleMode = StageScaleMode.NO_SCALE;
} else {
Application.application.stage.displayState = StageDisplayState.FULL_SCREEN;
button.label = "Exit Fullscreen Mode";
stage.scaleMode = StageScaleMode.SHOW_ALL;
}
invalidateSizes(); // Calls invalidateSize() explicitly on several components.
} catch(error:SecurityError) {
Alert.show("The security settings of your computer prevent this from being displayed in fullscreen.","Error: "+error.name+" #"+error.errorID);
} catch(error:Error) {
Alert.show(error.message,error.name+" #"+error.errorID);
}