這是我的問題:我有一個擴展Main類的Shared類。在我的Shared類中,我實例化其他類並將它們添加到此類。類AS3:實例化類的實例
package
{
import flash.display.Sprite;
public class Shared extends Main
{
public var m:Mirror = new Mirror(span, i*span+j, _x, _y, size, d);
public var g:Grid = new Grid(i*span+j,size, addl, span, _x, _y);
public var b:Ball = new Ball(30);
public var mc:MovieClips = new MovieClips(30, _x, _y, size, span);
public var l:Level = new Level(levelCount);
public function Shared(){
this.addChild(m);
this.addChild(g);
this.addChild(b);
this.addChild(mc);
this.addChild(l);
}
}
}
現在,在我的主要我也用的共享像這樣的實例:
private function init(e:Event = null):void
{
var sh:Shared = new Shared();
stage.addChild(sh.b);
stage.addChild(sh.mc);
stage.addChild(sh.l);
for (i = 0; i < span; i++)
{
for (j = 0; j < span; j++)
{
stage.addChild(sh.g);
if(addl.indexOf(i*span+j)==true){
stage.addChild(sh.m);
}
}
}
}
我沒有得到任何錯誤,但沒有對象出現在舞臺上,我可以」沒有發現問題。我認爲我的問題是Shared類不擴展Sprite,但是接下來我將不得不將大量參數傳遞給Shared,有沒有什麼辦法可以繞過這個?所以,我仍然可以延長主機...
在你提出新的問題之前,你應該接受你以前的答案:[1](http://stackoverflow.com/questions/13260618/actionscript3-moving-objects-of-type-movieclip),[2] (http://stackoverflow.com/questions/13000019/assigning-unique-identifiers-to-array-of-objects-in-actionscript3),[3](http://stackoverflow.com/questions/13326312/as3- import-classes-sharing-variables-classes) – Taurayi
我認爲你需要研究變量作用域。所有這些變量來自哪裏:span,i,j,_x,_y,size,d,addl? – danjp
我不認爲你想讓你的Shared類繼承自你的主類,如果從構造函數調用init函數,看起來你會有'Shared'對象的堆棧溢出。 – BadFeelingAboutThis