揭开AS程序的外纱(四) -- 全屏模式的那点事

    虽然全屏模式非常简单,但是,我觉得还是有一些东西是可以讲的。

    1. AS2.0和AS3.0全屏模式的区别

    其实,从AS2.0开始,就支持全屏模式了,但是播放器还是要9.0以上版本的。

    在AS2.0中,应用全屏模式的代码如下:

    进入全屏:Stage["displayState"] = "fullScreen";

    退出全屏:Stage["displayState"] = "normal";

    注意:必须使用以上格式!

 

    在AS3.0中,推荐的全屏模式代码如下:

    进入全屏:stage.displayState = StageDisplayState.FULL_SCREEN;

    退出全屏:stage.displayState = StageDisplayState. NORMAL;

 

    2. 如何可以较为方便的调试全屏模式?

    以前我很苦恼,每次调试全屏模式,都要借助html,但这样很麻烦。可是直接Ctrl+Enter,又是没办法调试全屏模式的。

    好吧,我承认我很愚蠢。因为无意按了Ctrl+Shift+Enter进入调试模式,我发现,全屏模式生效了。

 

    3. 为什么按照帮助文档的要求配置HTML后,还是无法进入全屏模式?

    帮助文档上写了两点:

    1) <param name="allowFullScreen" value="true" />

    2) <embed ... allowfullscreen="true" />

    有朋友问,我都设置了,为什么还是无法全屏?我告诉你个可能出错的原因。如果你是用Flash自带的发布功能生成的HTML文件,找一下是否同时生成了一段名为AC_FL_RunContent的Javascript代码,在那段代码里面,设置 'allowFullScreen', 'true',然后再试试看,现在应该可以全屏了。

 

    4. 为什么进入全屏模式后,键盘失灵了?

    不是代码的原因!我也不知道为什么Flash要做这个限制。如果要用键盘,只能做个模拟键盘,然后用鼠标点击了。暂时没想到什么突破的方法...

 

    5. AS3.0对全屏模式的侦听

    在AS3.0中,提供了FullScreenEvent类来侦听,当stage进入或者退出全屏模式时,都会触发。代码结构如下:

    function onFull(event:FullScreenEvent):void{

        trace(event.fullScreen); //true:当前全屏模式 false:当前正常模式

    }

    stage.addEventListener(FullScreenEvent.FULL_SCREEN, onFull);

 

    6. 暂时没想到其他还有啥要说的了.......

你可能感兴趣的:(职场,AS,全屏,休闲)