如何使对象在Action Script 3中消失

时间:2015-07-11 08:22:35

标签: actionscript-3 flash air adobe

我使用以下代码在我的应用程序中显示一个HTML页面,该页面由Action Script 3.0和Adobe Air支持。

imports
import flash.events.Event;
import flash.events.LocationChangeEvent;
import flash.geom.Rectangle;
import flash.media.StageWebView;
import flash.net.navigateToURL;
import flash.net.URLRequest;
import flash.events.MouseEvent;

//setup variables
var _stageWebView:StageWebView;
var myAdvertURL:String = "http://letschant.890m.com/v25.html";

// check that _stageWebView doesn't exist
if (!_stageWebView)
{
    _stageWebView = new StageWebView() ;
    // set the size of the html 'window'
    _stageWebView.viewPort = new Rectangle(0, 0, 480, 688);
    // add a listener for when the content of the StageWebView changes
    _stageWebView.loadURL(myAdvertURL);
}
// show the ad by setting it's stage property;
_stageWebView.stage = stage;

所以,如果我点击一个按钮,所有这些都应该消失。 我知道我们应该使用visible:false,但是我应该把代码放在哪里?,这不是一个影片剪辑,所以我应该怎么做?

请帮忙。 谢谢:D

1 个答案:

答案 0 :(得分:1)

StageWebView不是DisplayObject。所以你不能设置它的visible属性。您必须使用其他API调用来隐藏Web视图。将viewPort设置为0像素宽度和高度的矩形可以完成这项工作。

解决您的问题,将您的按钮放在舞台上,并为其指定实例名称btnToggle。在您添加当前块的同一帧中添加以下代码。

this.btnToggle.addEventListener(MouseEvent.CLICK, function(event:MouseEvent):void
{
    _stageWebView.viewPort = new Rectangle(0, 0, 0, 0);
});