2012-02-21 85 views
1

下面的代码会引发错误1046:未找到类型或不是编译时常量:KeyboardEvent。Adob​​e Air - KeyboardEvent错误

有人知道为什么吗?

import flash.desktop.NativeApplication; 
import flash.desktop.SystemIdleMode; 
import flash.system.Capabilities; 
import flash.system.System; 

if (Capabilities.cpuArchitecture == "ARM") 
{ 
NativeApplication.nativeApplication.addEventListener(KeyboardEvent.KEY_DOWN, handleKeys, false, 0, true); 
} 



function handleKeys(event:KeyboardEvent):void 
{ 
    if (event.keyCode == Keyboard.BACK) 
    { 
     NativeApplication.nativeApplication.exit(); 
    } 
} 
+0

如果答案解决您的问题(如你在给你对此有何评论表示),请接受的答案。谢谢。 – CodeMouse92 2012-04-29 03:02:19

回答

3

您需要导入KeyboardEvent类。

这是否工作(注意额外的import语句我加的):

import flash.desktop.NativeApplication; 
import flash.desktop.SystemIdleMode; 
import flash.system.Capabilities; 
import flash.system.System; 
import flash.events.KeyboardEvent; 
import flash.ui.Keyboard; 

if (Capabilities.cpuArchitecture == "ARM") 
{ 
NativeApplication.nativeApplication.addEventListener(KeyboardEvent.KEY_DOWN, handleKeys, false, 0, true); 
} 



function handleKeys(event:KeyboardEvent):void 
{ 
    if (event.keyCode == Keyboard.BACK) 
    { 
     NativeApplication.nativeApplication.exit(); 
    } 
} 
+0

谢谢。 这是缺少的:** import flash.ui.Keyboard ** – Tom 2012-02-21 13:21:42

+0

[编辑] ... nevermind ... – 2012-02-21 13:52:55