【问题标题】:action script 3 class & mxml file动作脚本 3 类和 mxml 文件
【发布时间】:2012-03-21 17:32:43
【问题描述】:

我有一个带有 getVideo 函数的 AS3 类。我想在 mxml 中使用这个函数。所以我在那里创建对象并尝试调用该函数,但出现此错误:

调用可能未定义的方法。

如何在 mxml 中使用我的函数?

我的 AS3:

public class InitVideoSound 
    {
        var video:Video = new Video();

        public function InitVideoSound()
        {...}

        public function getVideo():Video {
            return video;
        }

我的mxml:

<fx:Script>
        <![CDATA[           

            var ivs1 : InitVideoSound;

            public function init(){
            ivs1.getVideo();

            start.enabled = false;
            }
        ]]>
    </fx:Script>

【问题讨论】:

  • 一切看起来都正确。您确定这是导致错误的行吗?
  • 为什么start.enabled = false; 在你的代码 sn-p 中?您的代码 sn-ps 很难调试,因为您提供的只是标题,然后是看起来无关紧要的随机额外行。尝试修改它们,或提供更多信息。
  • 没关系。问题是为什么 IDE 说我的班级没有这样的功能。

标签: actionscript-3 flash-builder mxml


【解决方案1】:

试试这个

<fx:Script>
        <![CDATA[           

            var ivs1 : InitVideoSound = new InitVideoSound() ;

            public function init(){
            ivs1.getVideo();

            start.enabled = false;
            }
        ]]>
    </fx:Script>

确保类的必要导入已完成。

【讨论】:

  • 这个解决方案可以解决空引用的问题,但听起来不像是 OP 的问题。不过,我很容易出错。
  • 我认为它在这一行:var ivs1: InitVideoSound;我将其更改为 var ivs1 : InitVideoSound = new InitVideoSound() ;终于可以使用我的功能了。
  • @user1284054 是的,它刚刚为 InitVideoSound 创建了一个对象。所以后来当它被引用时,函数 getVideo() 正常工作。
猜你喜欢
  • 2012-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-13
  • 1970-01-01
  • 2010-12-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多