【问题标题】:cannot getChildByName starling stage无法 getChildByName 八哥阶段
【发布时间】:2013-04-18 13:03:32
【问题描述】:

我正在尝试从名为“bullet”的外部类中获取对放置在名为“_shooterHero”的椋鸟舞台上的对象的引用。

我已尝试将 getChildByName 用于:

starling.core.stagestarling.current.nativeStage,但没有任何运气

现在的代码:

var hero= Starling.current.stage.getChildByName("_shooterHero");
trace (hero.name)

【问题讨论】:

  • 为什么你试图从舞台上获取它,而不是从定义它的类中获取对它的引用?
  • 我也看到你把它命名为“_hero”,但你试图让孩子命名为“_shooterHero”,我看不到这里的重点!这是您在当前帖子中创建的类型还是您的真实代码?
  • Adrian Pirvulescu,是的,这是我输入的错误

标签: actionscript-3 object stage


【解决方案1】:

有几种方法可以解决您的问题:

  1. 让英雄可以公开访问。当你创建一个新英雄(无论在哪里)时,你还可以添加公共的 getter/setter 方法来允许你的外部类访问它。

  2. 创建一个可由单例 getInstance() 模式引用的“模型”类。然后按照(1)进行。

  3. 您确定精灵已添加到舞台吗?您可以通过 Starling.current.stage.getChildByName(hero); 来检查这一点。尽管为此需要访问 hero 变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多