在Mobile-Flex中如何在VerticalLayout的每个边框放置组件?

时间:2013-12-26 12:30:30

标签: flex flex-mobile

mobile-flex中,我想在屏幕右侧放置一个按钮,在屏幕右侧放置另一个按钮,如下图所示:

enter image description here

目前,这是我在没有右边按钮的情况下创建屏幕的方式:

<?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:exp="http://flex.apache.org/experimental/ns"
            title="Liste" creationComplete="creationCompleteHandler(event)">
        <s:layout>
            <s:VerticalLayout gap="5" horizontalAlign="left" paddingLeft="5" paddingRight="5" paddingTop="5" paddingBottom="5"/>
        </s:layout>
        <fx:Script>
            <![CDATA[
                import model.Db;

                import mx.collections.ArrayCollection;
                import mx.events.FlexEvent;

                private const dataProvider:ArrayCollection = new ArrayCollection();

                protected function creationCompleteHandler(event:FlexEvent):void
                {
                    var src:Array = [];
                    var db:Db = new Db();
                    var enreg:String = db.getDbSo("enreg");
                    var tabEnreg:Array = enreg.split("\n");

                    for (var i:int = 0; i <tabEnreg.length; i++)
                    {
                        var cols:Array = String(tabEnreg[i]).split(";");
                        src.push({col1: cols[0], col2: cols[1]});
                    }
                    dataProvider.source = src;
                }

            ]]>
        </fx:Script>
        <fx:Declarations>
            <!-- Placer ici les éléments non visuels (services et objets de valeur, par exemple). -->
        </fx:Declarations>
        <s:Button id="btn_add" label="Ajouter" click="navigator.pushView(AjoutView)" />
        <exp:MobileGrid id="dgm" dataProvider="{dataProvider}" width="100%" height="95%" >
            <exp:columns>
                <exp:MobileGridColumn dataField="col1" headerText="Colonne 1" width="50%"/>
                <exp:MobileGridColumn dataField="col2" headerText="Colonne 2" width="50%"/>
            </exp:columns>
        </exp:MobileGrid>
    </s:View>

所以我想在屏幕右侧添加另一个按钮“btn_add”按钮的水平位置。

那么如何在这种情况下添加其他右键?或者我应该考虑另一种布局?

2 个答案:

答案 0 :(得分:1)

您需要在布局中使用嵌套的Group。有点像这样:

<?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" title="HomeView">
    <s:layout>
        <s:VerticalLayout gap="5" horizontalAlign="left" paddingLeft="5" paddingRight="5" paddingTop="5" paddingBottom="5"/>
    </s:layout>

    <s:Group width="100%">
        <s:Button id="button1" right="0"/>
        <s:Button id="button2" left="0"/>
    </s:Group>
</s:View>

答案 1 :(得分:0)

要扩展Babibu的答案,您还可以使用嵌套的HGroup:

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

                  

<s:HGroup width="100%">
    <s:Button id="button1" />
    <s:Spacer width="100%" />
    <s:Button id="button2" />
</s:HGroup>

相关问题