【发布时间】:2013-05-05 14:01:01
【问题描述】:
所以我正在为game jam开发一款排序游戏,而我的AS3技能还有些不成熟。
我有一个 InputManager.as 来确定设备是否具有触控功能,然后在需要它的类中获取该信息。
我遇到的问题是:
C:\GameDev\Progressive Bytes\Dan\Scripts\Screens\Buttons.as, Line 55 1067:将 String 类型的值隐式强制转换为不相关的值 输入函数。
这就是问题所在:
if(InputManager.isTouch){
this.addEventListener(TouchEvent.TOUCH_BEGIN, TouchEventHandler);
} else {
this.addEventListener(MouseEvent.MOUSE_OVER, over);
}
这是在 Button 的构造函数中。
我进行了一些搜索,但我似乎无法在与此问题相关的事件侦听器上找到任何关于 1067 的答案。但是,正如我所说,AS3 有点菜鸟。
谢谢!!
【问题讨论】:
-
你能标出究竟是哪一行导致了错误吗?谢谢
-
知道了。结果 addEventListener 认为 over 函数是一个字符串,因为(虽然我还没有找到它),一个公共 var over:String 被声明在其他地方。我刚刚将函数的名称更改为 Over(),它现在可以工作了。
-
处理程序的命名约定使代码简单明了,例如:
onTouchBegin或touchBeginHandler和onMouseOver或mouseOverHandler。
标签: actionscript-3 addeventlistener