Kan ikke returnere array fra anden class
Jeg er igang med at sætte mig lidt ind i actionscript/side og har til det formål besluttet mig for at lave en hjemmeside i flash som henter data fra min mysql db.Jeg har fundet ud af at udtrække dataen, men det er arkitekturen jeg har lidt problemer med. Jeg har et movieklip som skal kalde en klasse som trækker den ønskede data ud og returnerer det som et Array, men det vil sgu ikke :)
Min Movieclip class:
package
{
import flash.display.*
import flash.net.*
import Connection
public class MenuContainer extends MovieClip
{
public var projectsArray:Array = new Array();
public var myConnection:Connection = new Connection();
public function MenuContainer()
{
projectsArray = myConnection.getProjectsArray();
populate();
}
private function populate():void
{
trace("the array is " + projectsArray.length +" elements long");
var menuItemArray:Array = new Array();
for(var i=0;i<projectsArray.length; i++)
{
trace("here we are in menuItemArray");
var fooClip:MovieClip = new MovieClip();
menuItemArray.push(fooClip);
trace(String(projectsArray[0][0]));
}
}
}
}
Min mysql connection class:
package
{
import flash.net.*;
import flash.display.*;
class Connection
{
public var _projectsArray:Array = new Array();
public var gw:NetConnection = new NetConnection();
public var res:Responder = new Responder(onResult, onFault);
public function Connection()
{
gw.connect("http://minhjemmeside.dk/amfphp/gateway.php");
callAmfphp();
}
public function onResult(responds:Object):void
{
var tmpProjectsArray:Array = new Array(responds.length);
for(var i=0;i<responds.length; i++)
{
tmpProjectsArray[i]= new Array(responds[0].length);
for(var j=0;j<responds[0].length;j++)
{
tmpProjectsArray[i][j]=String(responds[i][j]);
}
}
_projectsArray = tmpProjectsArray;
trace(_projectsArray[1][0]);
}
public function onFault(responds:Object):void
{
for(var i in responds)
{
trace(responds[i]);
}
}
public function callAmfphp()
{
gw.call("customServices.GetProjectsArray.getAllProjects",res);
}
public function getProjectsArray():Array
{
return _projectsArray;
}
}
}
Jeg ved at hvis jeg laver en trace i "onResult" så udskrives den korrekte data, men den bliver ikke returneret til min movieclip class.