Facebook 从加载程序到位图AS3 Flex
我正在尝试将Facebook相册中的图像加载到我的flex应用程序中,这是我单击FB图像时调用的代码:Facebook 从加载程序到位图AS3 Flex,facebook,actionscript-3,apache-flex,bitmap,loader,Facebook,Actionscript 3,Apache Flex,Bitmap,Loader,我正在尝试将Facebook相册中的图像加载到我的flex应用程序中,这是我单击FB图像时调用的代码: private var loaderFB:Loader; private var immCaricata:Bitmap = new Bitmap(); //Function where i pass the url of the FB image clicked private function getFBImage(src:S
private var loaderFB:Loader;
private var immCaricata:Bitmap = new Bitmap();
//Function where i pass the url of the FB image clicked
private function getFBImage(src:String):void{
var request:URLRequest;
loaderFB=new Loader();
request=new URLRequest(src);
loaderFB.contentLoaderInfo.addEventListener(Event.COMPLETE,onCompleteFBget);
loaderFB.load(request);
}
private function onCompleteFBget(event:Event):void {
var bitmap_dataFB:BitmapData = new BitmapData(640, 480);
bitmap_dataFB.draw(loaderFB.content);
immCaricata = new Bitmap(bitmap_dataFB);
displayOut.addChild(immCaricata);
}
它不起作用
如果我通过
displayOut.addChild(loaderFB); //instead displayOut.addChild(immCaricata);
它就像一个符咒
我的问题是,我需要将加载程序内容传递给该位图(immcaricadata),因为我在其他不同的函数中使用它
我尝试了不同的解决方案,但可能我在某个地方犯了一些错误
你能帮帮我吗?希望是显而易见的。
多谢各位
编辑:
问题不在于语法,而在于安全策略文件,我必须添加它:
在init函数中:
Security.loadPolicyFile("http://graph.facebook.com/crossdomain.xml");
Security.loadPolicyFile("http://profile.ak.fbcdn.net/crossdomain.xml");
然后我在哪里加载图像
loaderFB=new Loader();
request=new URLRequest(src);
loaderFB.contentLoaderInfo.addEventListener(Event.COMPLETE,onCompleteFBget);
var lc:LoaderContext = new LoaderContext();
lc.checkPolicyFile = true;
loaderFB.load(request,lc);
controlloImm = true;
希望是明确的,希望它能帮助别人。:)
如果您不想更改加载的图像大小,请尝试此方法,希望这会有所帮助谢谢您的回答,我已经尝试过此解决方案,但它不起作用。。我真的不明白为什么。可能问题出在代码的另一部分/有什么错误吗?比如沙盒安全违规?
private var loaderFB:Loader;
private var immCaricata:Bitmap;
//Function where i pass the url of the FB image clicked
private function getFBImage(src:String):void{
var request:URLRequest;
loaderFB=new Loader();
request=new URLRequest(src);
loaderFB.contentLoaderInfo.addEventListener(Event.COMPLETE,onCompleteFBget);
loaderFB.load(request);
}
private function onCompleteFBget(event:Event):void {
immCaricata = event.target.content as Bitmap;
displayOut.addChild(immCaricata);
}