将状态传递给Flex4 ButtonBar的子按钮
|
我有一个具有自定义外观的Spark ButtonBar,它为\“ middleButton \”需求定义了一个自定义外观。我的CustomButtonBarSkin有一个自定义状态,已最小化,我想将其传递给我的middleButton外观,以便它可以修改其设计。
是否有可能做到这一点?我可以看到我的按钮外观可以使用parentDocument.currentState来获取最小化状态,但这确实很丑陋。有什么方法可以将皮肤从工具栏传递到子按钮?
没有找到相关结果
已邀请:
4 个回复
号拳藐孔妇
。像这样:
因此,使用此代码,您可以通过以下方式声明自定义外观:
希望这能解决您的问题。 而且,如果最小化状态仅涉及更改中间按钮的外观,则可以从自定义组件和外观中删除所有与状态相关的代码。
爆山
这将使您能够执行大多数所需的操作,而不必tip着脚步围绕ButtonBar,ButtonBarBase和ButtonBarSkin-除非您想要togglebutton / selectedIndex,否则所有这些操作都是不必要的。 IMO很难创建基于dataProvider的按钮,而不仅仅是在MXML中声明按钮并在那里分配处理程序和其他属性。
缮记箔
:minimized是伪选择器(用于状态)。 不幸的是,除非我在状态更改时更改了父元素的styleName,否则它似乎不会被子对象(bug?)所困扰:
也许我应该呼吁父母改变状态,以使孩子接受改变,但只是将styleName更改为伪造的方法。 由于Flex 3仅支持基本的CSS选择器,因此这可能不是Flex中广泛使用的技术。
倾坞髓
得到它?