2014-01-30 34 views
0

ActionScript 3上下文中的「本機屬性只能與函數定義一起使用」的錯誤消息是什麼意思?我嘗試了谷歌搜索的信息,但我沒有任何運氣。我想(從這裏:https://github.com/jmhnilbog/Nilbog-Lib-AS2/blob/master/mx/mx/remoting/debug/NetDebug.as)更新的代碼如下:本機屬性只能與函數定義一起使用

import mx.remoting.debug.events.NetDebugTrace; 
import mx.remoting.debug.GlobalLocalConnection; 
import mx.remoting.debug.events.NetDebugError; 
import mx.remoting.debug.NetDebugConfig; 
import mx.remoting.debug.events.NetDebugFailedSendError; 
import mx.remoting.debug.commands.GetConfig; 
import mx.remoting.debug.events.NetDebugStatus; 
import mx.remoting.debug.events.NetDebugTraceNetServices; 

native class mx.remoting.debug.NetDebug extends Object 
{ 
    public function NetDebug(); 
    private var _config:mx.remoting.debug.NetDebugConfig; 
    private var _glc:mx.remoting.debug.GlobalLocalConnection; 
    private var _ncs:Array; 
    private var _nextNewId:Number; 
    private function _trace(traceobj:Object):Void; 
    private function _traceNetServices(who:String, severity:String, number:Number, message:String):Void; 
    public function addNetConnection(nc:NetConnection):Number; 
    public function getConfig():mx.remoting.debug.NetDebugConfig; 
    static public function getNetDebug():mx.remoting.debug.NetDebug; 
    static public function globalOnStatus(statusobj:Object):Void; 
    static public function initialize():Boolean; 
    static private var ndSingleton:mx.remoting.debug.NetDebug; 
    public function onEvent(eventObj:Object):Boolean; 
    public function onEventError(errorObj:Object):Boolean; 
    public function onReceiveCommand(commandobj:Object):Void; 
    public function onReceiveError(errorobj:Object):Void; 
    public function removeNetConnection(nc:NetConnection):Void; 
    public function requestNewConfig():Boolean; 
    public function sendCommand(commandobj):Boolean; 
    public function sendDebugEvent(eventobj:Object):Boolean; 
    public function sendStatus(statusobj:Object):Boolean; 
    static public function stripNCDEventToMinmal(ev:Object):Object; 
    static public function trace(obj:Object):Void; 
    static public function traceNetServices(who:String, severity:String, number:Number, message:String):Void; 
    public function updateConfig(config:Object):Void; 
    static var version:String; 
}; 

回答

1

類不能native,只有它們的功能。

native關鍵字表示AS3函數是圍繞本地代碼(即已編譯的程序集)的薄包裝。

+0

發佈後我做了什麼是將所有函數定義更改爲本機(除了與構造函數關聯的),並從類中移除本地修改器。它是否正確? – user1884723

+0

根據Adobe的說法:[Native]指定一個函數或方法由Flash Player以本機代碼實現。 Flash Player在內部使用native關鍵字在ActionScript應用程序編程接口(API)中聲明函數和方法。 **此關鍵字不能用於您自己的代碼中。**。這個討論可能會有所幫助:http://forums.adobe.com/thread/672331。你能澄清你想要做什麼嗎? – oztune

+0

我想在我的ActionScript 3代碼中包含NetServices.as和NetDebug.as。不幸的是,他們似乎已經將這些類從AS3中拿出來了,所以我正在從一些我發現試圖添加它們的舊AS2代碼向後工作。上面定義的本地類最初是一個外部類。 – user1884723

相關問題