Показать сообщение отдельно
Старый 24.02.2010, 20:03
snat вне форума Посмотреть профиль Отправить личное сообщение для snat Найти все сообщения от snat
  № 1  
Ответить с цитированием
snat

Регистрация: Feb 2010
Сообщений: 10
По умолчанию Глобальная переменная не хранит данные

Ребят, решить обернуть методы апи вконтакте в классы (но вопрос не по апи) и столкнулся с проблемкой. Есть переменная класса XMLdata:XML в методе записываю в неё значения, вывожу переменную через trace(XMLdata) и вижу что данные в неё успешно записались, но в другом методе опять вывожу эту переменную и вижу null. Как так может быть ? Вот код:

Код AS3:
package 
{ 
	import api.MD5;
	import flash.events.Event;
	import flash.net.*;
 
	public class VKmethods
	{
		public var API_ID:String = "1833756";
		public var VIEWER_ID:String = "9060138";
		public var API_SECRET:String = "APFFhywt9K";
		public var API_URL:String = "http://api.vkontakte.ru/api.php";
		public var TEST_MODE:String = "1";
		public var loader:URLLoader = new URLLoader();
		public var XMLdata:XML;
 
		public function SendRequest(Request:String):void
		{
			var URLReq:URLRequest = new URLRequest(Request);
			loader.load(URLReq)
			loader.addEventListener(Event.COMPLETE,AfterLoad);
		}
 
		public function AfterLoad(e:Event):void
		{
			XMLdata = new XML(loader.data);
		}
 
		public function getFriends():void
		{
			var sig = MD5.encrypt(VIEWER_ID+"api_id="+API_ID+"method=getFriendstest_mode=1v=2.0"+API_SECRET);
			var Request:String = API_URL+"?api_id="+API_ID+"&v=2.0&method=getFriends&test_mode="+TEST_MODE+"&sig="+sig;
			this.SendRequest(Request);
		}
 
		public function ReturnXMLdata():XML
		{
			trace(XMLdata);
			return XMLdata;
		}
	}
}
Ну а это основная программа где создаю объект класса и вызываю метод:

Код AS3:
function ButtonPush(e:MouseEvent):void
{
	var T:VKmethods = new VKmethods();
	T.getFriends();
	MainText.text = String(T.ReturnXMLdata());
}
butt_go.addEventListener(MouseEvent.CLICK, ButtonPush);
Подскажите где я ошибся


Последний раз редактировалось snat; 24.02.2010 в 20:06.