首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从URLLoader获取url?

从URLLoader获取url?
EN

Stack Overflow用户
提问于 2009-07-31 21:41:42
回答 2查看 3.4K关注 0票数 3

有没有简单/好的方法从URLLoader对象中获取url?似乎至少有另外两个人(this guy和这个this guy)也想知道同样的事情。也许我们可以在求救信号上得到答案?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-07-31 22:15:40

代码语言:javascript
复制
package
{

import flash.net.URLLoader;
import flash.net.URLRequest;

public dynamic class urlURLLoader extends URLLoader
{

    private var _req:URLRequest;

    public function urlURLLoader( request:flash.net.URLRequest = null ):void
    {   super( request );
        _req = request;
    }

    public override function load( request:flash.net.URLRequest ):void
    {   _req = request;
        super.load( request );
    }

    public function get urlRequest( ):URLRequest
    {   return _req;
    }

}
票数 8
EN

Stack Overflow用户

发布于 2009-08-01 03:38:13

这是一个很好的方法。相反的方法是将你的URLLoader包装在一个类中,并将信息存储在那里,如果你想让请求的类被告知加载完成了,哪个url被成功加载了。

你可以像这样访问它,

代码语言:javascript
复制
customLoader.url="http://.....";
customLoader.onLoadDelegate = this;
customLoader.load();

并等待回调

代码语言:javascript
复制
public function customLoaderComplete(url:String, data:[Object or whatever you set]) {

}

在customLoader类中存储url和委托

代码语言:javascript
复制
private var url:String;
private var onLoadDelegate:Object;

public function set url(_url:String):void {
  url = _url;
}

public function set onLoadDelegate(_onLoadDelegate:Object):void {
  onLoadDelegate = _onLoadDelegate;
}

然后创建请求、URLLoader等,并将Event.COMPLETE侦听器设置为触发一个向委托报告的函数

代码语言:javascript
复制
public function dataLoaded(event:Event):void {

   .. parse event.target.data if needed...

    onLoadDelegate.customLoaderComplete(url, data);

}

如果你更进一步,顶层的“请求发布”类可以依附于一个接口/扩展一个基类,这样你就不必使用匿名对象了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1215030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档