FRENewObject()

AIR 3.0 和更高版本

用法

FREResult FRENewObject( 
            const uint8_t*                className, 
            uint32_t                argc, 
            FREObject                argv[], 
            FREObject*                object, 
            FREObject*                thrownException 
);

参数

className
uint8_t 数组。一个作为要创建一个对象的 ActionScript 类的名称的字符串。字符串使用 UTF-8 编码,并以 null 字符终止。

argc
uint32_t,传递给 ActionScript 类的构造函数的参数的数量。此参数是 argv 数组参数的长度。当构造函数没有任何参数时,值可以是 0。

argv[]
FREObject 数组,每个 FREObject 元素都对应于作为参数传递给构造函数的 ActionScript 类或基元类型。当构造函数没有任何参数时,值可以是 NULL 。

object
指向 FREObject 的指针。当此方法成功返回时,此 FREObject 变量表示新的 ActionScript 类对象。

thrownException
指向 FREObject 的指针。如果调用此方法会导致运行时引发 ActionScript 异常,则此 FREObject 变量表示 ActionScript Error(或 Error 子类)对象。如果未发生错误,则运行时会将此 FREObject 变量设置为无效。即,thrownException FREObject 变量的 FREGetObjectType() 会返回 FRE_INVALID_OBJECT 。如果您不希望处理异常信息,则此指针可以是 NULL 。

返回

FREResult,可能的返回值包括(但不限于)下列值:

FRE_OK
函数已成功。 object 参数表示新的 ActionScript 类对象。

FRE_ACTIONSCRIPT_ERROR
发生 ActionScript 错误。运行时将 thrownException 参数设置为表示 ActionScript Error 类或子类对象。

FRE_ILLEGAL_STATE
扩展上下文已获取一个 ActionScript BitmapData 对象或 ByteArray 对象。在释放 BitmapData 或 ByteArray 对象之前,上下文无法调用此方法。

FRE_INVALID_ARGUMENT
className 或 object 参数为 NULL ,或者 argc 大于 0 但 argv 为 NULL 或为空。

FRE_NO_SUCH_NAME
className 参数与 ActionScript 类名称不匹配。

FRE_WRONG_THREAD
从运行时在其中具有对本机扩展函数的未决调用的线程以外的线程调用了方法。

说明

调用此函数可创建 ActionScript 类的对象。运行时调用的构造函数取决于您在 argv 数组中传递的参数。