Вывод фотографий друзей
надо вывести список друзей, просматривающего приложение
вывожу в qwe_tl - компонент TileList
наполняю его экземплярами мувиклипа friend_list из библиотеки
Код AS3:
package vk
{
import flash.net.*;
import flash.display.*;
import flash.events.*;
import flash.text.*;
import vk.VkApiNode;
public class Main extends MovieClip
{
private var api_id:Number = 11111111;
private var api_secret:String = "sdfsdsdfsd";
private var api:VkApiNode;
private var viewer_id;
private var server_url;
private var url_loader:URLLoader;
private var url_request:URLRequest;
private var query:String;
public function Main():void
{
viewer_id = LoaderInfo(root.loaderInfo).parameters.viewer_id;
server_url = 'http://api.vkontakte.ru/api.php?';
api = new VkApiNode(viewer_id,api_id,api_secret,true,'XML','2.0',server_url);
query = api.getFriends();
url_request = new URLRequest(query);
url_loader = new URLLoader ;
url_loader.addEventListener(Event.COMPLETE,friendsLoaded);
url_loader.load(url_request);
}
public function friendsLoaded(event:Event):void
{
var responseFriends:XML = new XML(url_loader.data);
if (responseFriends.error_code != 7)
{
var all_friends:Array = new Array ;
for each (var fid:XML in responseFriends.*)
{
all_friends.push(fid);
}
// получаем профили друзей, используя метод getProfiles
var fields:Array = new Array ;
fields = ['first_name,last_name,photo_medium'];
getProfiles(all_friends,fields);
}
else
{
friends_tf.text = 'Нет доступа к списку друзей';
}
}
public function getProfiles(uids:Array,fields:Array):void
{// функция получения профилей
query = api.getProfiles(uids,fields);
url_request = new URLRequest(query);
url_loader = new URLLoader ;
url_loader.addEventListener(Event.COMPLETE,profilesLoaded);
url_loader.load(url_request);
}
public function profilesLoaded(event:Event):void
{
var photoLoader:Loader = new Loader ;
var responseFriendsProfiles:XML = new XML(url_loader.data);
for each (var user:XML in responseFriendsProfiles.*)
{
var temp:friend_list = new friend_list ;
var stroka:String = user.first_name + ' ' + user.last_name;
temp.title_txt.text = stroka;
var photo = user.photo_medium;
var request2:URLRequest = new URLRequest(photo);
photoLoader.load(request2);
photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaded);
qwe_tl.addItem({source:temp});
}
function onLoaded():void
{
photoLoader.width = 150;
photoLoader.height = 150;
temp.addChild(photoLoader);
}
}
}
}
фотография выводится только у самого нижнего элемента TileList
подскажите, пожалуйста, как исправить :umnik2:
|