Таможенная граница кожи SkinnableContainer - PullRequest
1 голос
/ 02 мая 2011

У меня есть SkinnableContainer, к которому я хотел бы добавить границу.Я уже создал класс скина, который создает 1-пиксельную границу вокруг всех четырех сторон контейнера, однако я хотел бы, чтобы граница была только для верхней и нижней части контейнера, а не для сторон (слева, справа).Как я могу достичь такой вещи?Я прикрепил свой текущий класс кожи.Пожалуйста помоги!Заранее спасибо.

<?xml version="1.0" encoding="utf-8"?>
<!-- containers\spark\mySkins\MyBorderSkin.mxml -->
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:mx="library://ns.adobe.com/flex/mx"
    xmlns:s="library://ns.adobe.com/flex/spark" >

<fx:Metadata>
    [HostComponent("spark.components.SkinnableContainer")]
</fx:Metadata>

<!-- Define the skin states. -->
<s:states>
    <s:State name="normal" />
    <s:State name="disabled" />
</s:states>

<!-- Define a Rect to fill the area of the skin. -->
<s:Rect x="0" y="0"
        height="100%" width="100%">
    <s:stroke>
        <s:LinearGradientStroke weight="1"/>
    </s:stroke>         
</s:Rect>

<!-- Define the content area of the container. -->
<s:Group id="contentGroup"
         left="5" right="5" top="2" bottom="2">
    <s:layout>
        <s:VerticalLayout/>
    </s:layout>
</s:Group>        
</s:Skin>

1 Ответ

2 голосов
/ 02 мая 2011

Используйте что-то вроде:

<s:Line left="0" top="0" right="0">
    <s:stroke>
        <s:LinearGradientStroke weight="1"/>
    </s:stroke>
</s:Line>

<s:Line left="0" bottom="0" right="0">
    <s:stroke>
        <s:LinearGradientStroke weight="1"/>
    </s:stroke>
</s:Line>

вместо вашего Rect объявления.

...