有没有办法从Flash对象中获取公开函数的列表?例如,您可以通过执行以下命令获取对象中所有方法的列表:
for (var i in object) {
if (typeof object[i] == "function") {
console.log(i);
}
}
Run Code Online (Sandbox Code Playgroud)
唯一的问题是,这不会暴露通过ExternalInterfaces API注册的任何方法.我可以尝试看看函数是否存在(object['method'])它告诉我它是一个函数,但我必须以这种方式猜测每个现有的方法.
注意:显然,我无法访问actionscript.
我有2个皮肤,几乎相同,但在1个小方法上有所不同,如果我可以将布尔值传递给皮肤,同时将其分配给主机组件(按钮).
<s:Button skinClass="MyBtnSkin" />
Run Code Online (Sandbox Code Playgroud)
在为按钮分配皮肤时是否有办法,我还可以以某种方式将参数传递给皮肤?
Action中的静态属性是否类似于.net中String对象中的静态属性,以检查字符串是否为空,即String.Empty.
谢谢
我正在使用ScanHardware功能来获取更新的相机列表.如果将相机插入我的Mac mini,则会更新相机长度.如果我插入相机我的应用程序突然关闭.
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
height="280"
width="280"
creationComplete="test1()">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.controls.Alert;
public var hardwareTimer:Timer;
public function test1():void{
hardwareTimer = new Timer(5000);
hardwareTimer.addEventListener(TimerEvent.TIMER,refreshHardware);
hardwareTimer.start();
}
public function refreshHardware(ev:TimerEvent):void{
flash.media.scanHardware();
Alert.show(Camera.names.length.toString());
}
]]>
</fx:Script>
</s:WindowedApplication>
Run Code Online (Sandbox Code Playgroud)
如果我
Camera.names在拔掉任何电源后使用Camera,我的应用程序就会崩溃.
如何解决这个问题?
我试图在FlashDevelop中向papervision添加项目引用或swc,但是intellisense没有提起它.我以前做过,但我忘记了.
谢谢.
如何打开"跨域安全性",以便页面上的JavaScript可以自由地与SWF通信,即使这是在另一个域上托管的?
我确实知道默认情况下会阻止此函数通信,但是通过使用名为"crossdomain.xml"的文件和actionscript 3函数:system.Security.allowDomain("*").虽然我没有取得足够的成功,但我没有洞察力知道哪一个是开放的.
是否有其他隐藏的安全层,在这种情况下我需要考虑哪些?
我是否通过这种设置以某种方式为潜在的黑客开放我的代码?
(如果您想知道:是的,我必须在一个场景中进行此工作,其中html托管在一个域上,JavaScript从另一个域外部添加,而SWF由来自第三个域的JavaScript嵌入 - 不要问为什么,解释起来太复杂了 - 我也希望我能在一个域中托管整个事情.
大家好,我想知道什么是dispatchEvent在AS3.谷歌搜索时我没有任何想法.:(所以请帮助我
编辑1:
public static const SET_VOLUME:String = "setVolume";
private function onclick(evt:MouseEvent):void {
soundClip.scaleX = 0;
dispatchEvent(new Event(SET_VOLUME));
}
Run Code Online (Sandbox Code Playgroud)
这意味着什么?(
决定候选人是否具有使用Flex和ActionScript的强大或至少公平的知识可能是一个很好的问题.
我在flex(flash builder)中使用什么数据类型来创建"double"或"float"数据类型.我需要小数点后的数字.(即价格)
在本文中,它说ActionScript 3.0符合ECMA第4版.但是,ActionScript 3.0代码看起来像Java并且拥有class声明,甚至没有看起来像JavaScript和没有类或扩展,而不是看起来像JavaScript extend?
actionscript ×10
apache-flex ×5
flash ×5
adobe ×2
javascript ×2
camera ×1
cross-domain ×1
flashdevelop ×1
flex3 ×1
flex4 ×1
macos ×1
security ×1