【问题标题】:Applying Dynamic Styles to Skins in Flex在 Flex 中将动态样式应用于皮肤
【发布时间】:2009-12-24 00:31:11
【问题描述】:

我有一个滚动条拇指皮肤,我希望能够动态设置样式或设置属性。

<mx:Panel   
    verticalScrollBarStyleName="verticalScrollBarNoArrows">
</mx:Panel>

style.css

.verticalScrollBarNoArrows
{
    upArrowSkin:      ClassReference(null);
    downArrowSkin:  ClassReference(null);

    trackSkin:      ClassReference(null);
    thumbSkin:      ClassReference("skins.ScrollBarThumb"); 
}

ScrollBarThumb.as (sn-p)

public class ScrollBarThumb extends Border
{
    [Bindable]
    private var cornerRadius:Number = 2;

    [Bindable]
    private var backgroundColor:uint = 0x222222;

    [Bindable]
    private var xOffset:int = -3;

我希望能够在皮肤中设置这些属性,以便可以为使用它的每个组件设置不同的皮肤样式。

你建议我怎么做?

【问题讨论】:

    标签: apache-flex styling skinning


    【解决方案1】:

    您通常应该将皮肤上的样式设置为样式而不是属性:

    [Style(name="cornerRadius", type="Number", format="Length", inherit="yes")]
    

    然后在updateDisplayList中绘制皮肤时可以调用getStyle("cornerRadius")

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-25
      • 2011-01-31
      相关资源
      最近更新 更多