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 在Flex移动应用程序中使用FXG图形可以与MXML一起使用,但不能与ActionScript一起使用_Apache Flex_Flex4.5_Flex Mobile_Flex4.6_Fxg - Fatal编程技术网

Apache flex 在Flex移动应用程序中使用FXG图形可以与MXML一起使用,但不能与ActionScript一起使用

Apache flex 在Flex移动应用程序中使用FXG图形可以与MXML一起使用,但不能与ActionScript一起使用,apache-flex,flex4.5,flex-mobile,flex4.6,fxg,Apache Flex,Flex4.5,Flex Mobile,Flex4.6,Fxg,我已经阅读了Adobe的文档,但只能通过MXML嵌入FXG- MyStars.mxml: <?xml version="1.0" encoding="utf-8"?> <s:ViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" firstView="views.Home"> &

我已经阅读了Adobe的文档,但只能通过MXML嵌入FXG-

MyStars.mxml:

<?xml version="1.0" encoding="utf-8"?>
<s:ViewNavigatorApplication 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    firstView="views.Home">
</s:ViewNavigatorApplication>
<?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:comps="assets.*"
        title="Home">

    <comps:Star />
</s:View>
<?xml version='1.0' encoding='UTF-8'?>
<fxg:Graphic xmlns:fxg="http://ns.adobe.com/fxg/2008" version="2">    
    <fxg:Path x="9.399" y="10.049" data="M 82.016 78.257 L 51.895 69.533 L 27.617 89.351 L 26.621 58.058 L 0.231 41.132 L 29.749 30.52 L 37.714 0.241 L 56.944 24.978 L 88.261 23.181 L 70.631 49.083 Z">
        <fxg:fill>
            <fxg:SolidColor color="#FFFFFF"/>
        </fxg:fill>
        <fxg:stroke>
            <fxg:SolidColorStroke 
                caps="none" 
                color="#4769C4" 
                joints="miter" 
                miterLimit="4" 
                weight="20"/>
        </fxg:stroke>
    </fxg:Path>
</fxg:Graphic>
<?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:comps="assets.*"
        title="Home">

    <fx:Script>
        <![CDATA[
            import spark.core.SpriteVisualElement;

            private static const STAR:SpriteVisualElement = new Star();
        ]]>
    </fx:Script>  

<s:BitmapImage source="{STAR}" />
</s:View>
Home.mxml:

<?xml version="1.0" encoding="utf-8"?>
<s:ViewNavigatorApplication 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    firstView="views.Home">
</s:ViewNavigatorApplication>
<?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:comps="assets.*"
        title="Home">

    <comps:Star />
</s:View>
<?xml version='1.0' encoding='UTF-8'?>
<fxg:Graphic xmlns:fxg="http://ns.adobe.com/fxg/2008" version="2">    
    <fxg:Path x="9.399" y="10.049" data="M 82.016 78.257 L 51.895 69.533 L 27.617 89.351 L 26.621 58.058 L 0.231 41.132 L 29.749 30.52 L 37.714 0.241 L 56.944 24.978 L 88.261 23.181 L 70.631 49.083 Z">
        <fxg:fill>
            <fxg:SolidColor color="#FFFFFF"/>
        </fxg:fill>
        <fxg:stroke>
            <fxg:SolidColorStroke 
                caps="none" 
                color="#4769C4" 
                joints="miter" 
                miterLimit="4" 
                weight="20"/>
        </fxg:stroke>
    </fxg:Path>
</fxg:Graphic>
<?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:comps="assets.*"
        title="Home">

    <fx:Script>
        <![CDATA[
            import spark.core.SpriteVisualElement;

            private static const STAR:SpriteVisualElement = new Star();
        ]]>
    </fx:Script>  

<s:BitmapImage source="{STAR}" />
</s:View>

我也尝试过导入comps和/或新公司之星()


当我将FXG文件移动到src/并使用xmlns:comps=“*”时,一切都正常。

在ActionScript中导入Star,基于您的代码,我假设如下:

import assets.Star
private static const STAR:SpriteVisualElement = new Star();
我怀疑这将消除编译器错误。但是,我不确定是否可以使用SpriteVisualElement作为BitmapImage的源。您可能必须将SpriteVisualElement添加为父容器的子容器,并使用Flex组件生命周期来完成此操作


我已经做了一些实验,只是。不过,由于某种原因,我忽略了FXG元素可以是SpriteVisualElement这一事实。如果您在ActionScript中创建组件,使用我的FXGImage类不会免除您在ActionScript中调整组件大小和位置的责任。

对于FXG图形,请注意您的图片大小。使用FXG创建对象时,图标周围的空白将计数。确保将艺术品大小设置为图标大小(图标周围没有额外的空白)。这样,当您嵌入到bitmapImage时,FXG资产看起来会更好

“导入资产。明星”效果很好,谢谢。Image和BitmapImage也可以将其视为source=。不幸的是,当我设置宽度和高度时,它们工作不好,缩放FXG文件由于某些原因不能很好地工作。@AlexanderFarber是图像不缩放的问题吗?或者是纵横比没有保持的问题?以下是我的FXGImage组件的示例:。您可以更改高度和宽度,不存在问题。好吧,您的FXGImage组件看起来好多了。图像和位图图像确实可以缩放,但看起来很糟糕。例如,当我在上述应用程序中使用此代码时: