我是AS3的新手,我需要帮助将FLVPlayBack组件放在一起。
当我把它放在时间轴的第一帧时:
player.volume = 0;
player._uiMgr._isMuted = true;
我收到错误:
错误场景= 3A - 简介,图层=操作,框架= 1:第27行:该成员是私有的,无法访问。 videoplayer._uiMgr._isMuted = true;
有人说“创建一个setter方法来执行它,编译器错误应该消失!”
但即使使用谷歌搜索setter方法,我也不知道如何解决这个问题。
有人能帮助我吗?
答案 0 :(得分:0)
似乎_uiMgr和_isMuted是private attributes
(因此_)。他们有分配给他们的吸气剂吗?如果他们这样做,您应该可以使用player.uiMgr.isMuted = true;
编辑:你必须为FLVPlayer分配一个muteButton,然后在其上发送clickevent。像这样http://www.kirupa.com/forum/showthread.php?193603-FLVPlayback-actionscript-Mute&p=2412841&viewfull=1#post2412841
答案 1 :(得分:0)
如果你有一个变量“玩家”,你想要合作,这就是你应该做的。
(1)首先确定变量的类型:运行:
trace( typeof player );
在您的情况下,它会输出“FLVPlayback”
(2)现在转到Adobe网站上的flash参考,并寻找该类:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/video/FLVPlayback.html
(3)在参考文献中,您可以找到以下内容: (a)公共属性:这些是您可以设置值的类变量。此类中还有一些变量,这些变量未在此处列出,因为您无法访问它们 - 因为它们不是公共的 - 它们仅存在于类(或包)内部使用中。 (例如:_uiMgr)
(b)公共方法 - 这些是你可以运行的功能。这里还有更多功能,供内部使用而未列出。
(c)活动 - AS3非常重要的一部分。用于在不同类之间发送消息或分隔行为,以及与用户交互。阅读:http://www.adobe.com/devnet/actionscript/articles/event_handling_as3.html
(d)公共常数
现在,在您的情况下,看起来您正试图将播放器静音。 在上面的列表中寻找“静音”,只会给你一个结果: muteButton:Sprite静音按钮控件。 我们期待更好的东西,但我们必须与之合作。这是一个按钮,我们会让flash认为用户点击它 - 然后静音。 以下行将解决这个问题:
player.muteButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
P.S。
当以这种方式定义变量时:Object player = new FLVPlayback();
,运行trace(typeof player)
将返回“对象”。您需要运行trace(player.constructor)
才能查看变量的运行时类型。