В каком формате возвращается результат запроса
Код AS3:
VK.api("getProfiles", {uids: friends, fields: "photo"}, process, letUserKnow);
Обработка результата как URL-строки не сработала...
Код AS3:
private function addFriendsToList(friends:Array):void
{
for (var currentFriend:int = 0; currentFriend < friends.length; currentFriend ++)
{
var newFriend:Friend = new Friend();
// setting friend's name for each of the friends
newFriend.setName(friends[currentFriend].first_name + " " + friends[currentFriend].last_name);
// setting uid for each of the friends;
newFriend.setUID(friends[currentFriend].uid);
// setting photo to load for each of the friends;
newFriend.loadPhoto(friends[currentFriend].photo);
//adding current friend to the list of all friends;
_friends.push(newFriend);
}
showFriends();
}
Код AS3:
package com.engine
{
import flash.display.Bitmap;
import flash.display.Sprite;
import flash.display.BitmapData;
import flash.events.Event;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.display.LoaderInfo;
public class Friend extends Sprite
{
private var _uid:int;
private var _avatar:Sprite;
private var _nick:String;
private var _fullName:String;
private var _methanic:Methanic;
private var _nameField:TextField;
public function Friend()
{
trace("... Friend initialized.");
_avatar = new Sprite();
this.addEventListener(Event.ADDED_TO_STAGE, prepare);
this.addEventListener(Event.REMOVED_FROM_STAGE, unprepare);
}
private function prepare(e:Event):void
{
this.addChild(_avatar);
_nameField = new TextField();
_nameField.text = _fullName;
this.addChild(_nameField);
}
private function unprepare(e:Event):void
{
}
public function updateProfile():void
{
}
public function setName(name:String):void
{
_fullName = name;
this.updateProfile();
}
public function loadPhoto(url:String):void
{
var photoStorage:Loader = new Loader();
photoStorage.contentLoaderInfo.addEventListener(Event.COMPLETE, setAvatar);
photoStorage.load(new URLRequest(url));
}
private function setAvatar(result:Event):void
{
var bitmapData:BitmapData = Bitmap(LoaderInfo(result.target).content).bitmapData;
var avatar:Bitmap = new Bitmap(bitmapData);
_avatar.addChild(avatar);
}
public function getName():String
{
return _fullName;
}
public function setUID(uid:int):void
{
_uid = uid;
}
public function getUID():int
{
return _uid;
}
}
}