Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 柔性皮肤按钮,保持图标_Apache Flex_Button_Skinning - Fatal编程技术网

Apache flex 柔性皮肤按钮,保持图标

Apache flex 柔性皮肤按钮,保持图标,apache-flex,button,skinning,Apache Flex,Button,Skinning,我试图在Flex中对按钮进行蒙皮,但在我对按钮进行蒙皮后,我在其中链接的图标消失了。我知道我可以将图标添加到皮肤中,但这意味着我必须创建许多不同的皮肤 有什么简单的方法可以解决这个问题吗 mxml文件: <?xml version="1.0" encoding="utf-8"?> <s:View xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"

我试图在Flex中对按钮进行蒙皮,但在我对按钮进行蒙皮后,我在其中链接的图标消失了。我知道我可以将图标添加到皮肤中,但这意味着我必须创建许多不同的皮肤

有什么简单的方法可以解决这个问题吗

mxml文件:

<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:ns1="*"
        xmlns:packageservice="services.packageservice.*"
        title="My Dish"
        fontSize.Beef="10" textAlign.Beef="center">
    <fx:Script>
        <![CDATA[
            import com.adobe.serializers.utility.TypeUtility;

            import mx.events.FlexEvent;




            protected function list_creationCompleteHandler(event:FlexEvent):void
            {
                my_get_beef_dishResult.token = packageService.my_get_beef_dish();
            }


            protected function list2_creationCompleteHandler(event:FlexEvent):void
            {
                my_get_pork_dishResult.token = packageService.my_get_pork_dish();
            }


            protected function list3_creationCompleteHandler(event:FlexEvent):void
            {
                my_get_chicken_dishResult.token = packageService.my_get_chicken_dish();
            }


            protected function list4_creationCompleteHandler(event:FlexEvent):void
            {
                my_get_fish_dishResult.token = packageService.my_get_fish_dish();
            }


            protected function list5_creationCompleteHandler(event:FlexEvent):void
            {
                my_get_vegetables_dishResult.token = packageService.my_get_vegetables_dish();
            }

        ]]>
    </fx:Script>
    <s:states>
        <s:State name="Beef"/>
        <s:State name="Pork"/>
        <s:State name="Chicken"/>
        <s:State name="Fish"/>
        <s:State name="Vegetables"/>
        <s:State name="Other"/>
    </s:states>
    <s:navigationContent>
        <s:Button label="Back" click="navigator.popView();"/>
    </s:navigationContent>
    <fx:Declarations>
        <s:CallResponder id="my_get_beef_dishResult"/>
        <packageservice:PackageService id="packageService"/>
        <s:CallResponder id="my_get_pork_dishResult"/>
        <s:CallResponder id="my_get_chicken_dishResult"/>
        <s:CallResponder id="my_get_fish_dishResult"/>
        <s:CallResponder id="my_get_vegetables_dishResult"/>

        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
    <s:VGroup x="0" y="0" width="245" height="364" contentBackgroundColor="#E6E6E6">                                                      
        <s:List id="MyDishOther" includeIn="Other" width="245" height="364" contentBackgroundColor="#E6E6E6"></s:List>
        <s:List id="list" includeIn="Beef" width="245" height="365"
                creationComplete="list_creationCompleteHandler(event)" labelField="name">
            <s:AsyncListView list="{my_get_beef_dishResult.lastResult}"/>
        </s:List>
        <s:List id="list2" includeIn="Pork" width="245" height="365"
                creationComplete="list2_creationCompleteHandler(event)" labelField="name">
            <s:AsyncListView list="{my_get_pork_dishResult.lastResult}"/>
        </s:List>
        <s:List id="list3" includeIn="Chicken" width="245" height="365"
                creationComplete="list3_creationCompleteHandler(event)" labelField="name">
            <s:AsyncListView list="{my_get_chicken_dishResult.lastResult}"/>
        </s:List>
        <s:List id="list4" includeIn="Fish" width="245" height="365"
                creationComplete="list4_creationCompleteHandler(event)" labelField="name">
            <s:AsyncListView list="{my_get_fish_dishResult.lastResult}"/>
        </s:List>
        <s:List id="list5" includeIn="Vegetables" width="245" height="365"
                creationComplete="list5_creationCompleteHandler(event)" labelField="name">
            <s:AsyncListView list="{my_get_vegetables_dishResult.lastResult}"/>
        </s:List>
    </s:VGroup>

...

        <s:Button includeIn="Beef" width="70"  icon="assets/beef.png" skinClass="components.Stab"/>
        <s:Button includeIn="Beef" width="60" click="currentState='Chicken'" icon="assets/chicken.png"/>
        <s:Button includeIn="Beef" width="60" click="currentState='Fish'" icon="assets/fish(1).png"/>
        <s:Button includeIn="Beef" width="60" click="currentState='Pork'" icon="assets/porktest(1).png"/>
        <s:Button includeIn="Beef" width="60" icon="assets/t_vegetables.png" click="currentState='Vegetables'"/>

.....

    </s:VGroup>
</s:View>

...
.....
皮肤等级:

<?xml version="1.0" encoding="utf-8"?>

<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" alpha.disabled=".5">

    <!-- states -->

    <s:states>

        <s:State name="up" />

        <s:State name="over" />

        <s:State name="down" />

        <s:State name="disabled" />

    </s:states>

    <!-- layer 2: fill -->
    <s:Rect left="1" right="1" top="1" bottom="1" radiusX="2" radiusY="2">
        <s:fill>
            <s:LinearGradient rotation="90">
                <s:GradientEntry color="0xFFFFFF" 
                                 color.over="0xBBBDBD" 
                                 color.down="0xAAAAAA" 
                                 alpha="0.85" />
                <s:GradientEntry color="0xD8D8D8" 
                                 color.over="0x9FA0A1" 
                                 color.down="0x929496" 
                                 alpha="0.85" />
            </s:LinearGradient>
        </s:fill>
    </s:Rect>

    <!-- layer 2: border -->
    <s:Rect left="0" right="0" top="0" bottom="0" width="60" height="45" radiusX="2" radiusY="2">
            <s:stroke>

            <s:LinearGradientStroke rotation="90" weight="1">
                <s:GradientEntry color="0x000000" 
                                 alpha="0.5625"
                                 alpha.down="0.6375" />
                <s:GradientEntry color="0x000000" 
                                 alpha="0.75" 
                                 alpha.down="0.85" />
            </s:LinearGradientStroke>
            </s:stroke>
    </s:Rect>




</s:Skin>

我猜问题在于你的皮肤不是从斯巴克纽扣皮肤继承来的。
它实现了图标功能,默认按钮皮肤继承了SparkButtonSkin。

请给我们一些代码。您是否也在为mx:或s:按钮蒙皮?您需要按钮底部的图标蒙皮部分。让Flash Builder自动生成蒙皮。从SparkButtonSkin继承您的蒙皮