0

现在有一个构造函数:MyMarker(icon:DisplayObject=null)接受任何 DisplayObject,如果我创建 MyMarker 的新实例(只是 new MyMarker()),它将使用默认图标进行显示,那么如何设置图像/图标进入这个构造函数?任何想法都非常感谢!

4

2 回答 2

1

从您的问题中很难判断,但是,如果您想在 NO DisplayObject 传递时设置默认图标,只需检查 MyMarker 构造函数中的图标是否为空,例如:

...
public function MyMarker(icon:DisplayObject=null) {
    if (icon==null) {
    // set default icon here...

    }

    }
...

至于继承问题,只要传递的对象继承自DisplayObject,就可以了。如果您尝试调用未出现在 DisplayObject 中的对象的方法,您可能会遇到麻烦。

于 2013-08-09T09:40:31.263 回答
0

您应该提前创建一个合适的 DisplayObject,然后在构造函数中传递对该对象的引用:

var myLittleCustomIcon:Sprite = new Sprite();
myLittleCustomIcon.graphics.beginFill(0x00FF00, 1);
myLittleCustomIcon.graphics.drawRect(0, 0, 100, 50);
myLittleCustomIcon.graphics.endFill();
var myCustomMaker:MyMarker = new MyMarker(myLittleCustomIcon);
于 2013-08-09T08:15:21.813 回答