0

我总是对看似如此简单的事情进行硬编码......

这是场景:

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx">

    <s:Form>
        <s:layout>
            <s:TileLayout requestedColumnCount="2"
                          verticalAlign="middle" />
        </s:layout>
        <s:FormItem label="Label with long text">
            <s:TextInput />
        </s:FormItem>
        <s:FormItem label="Label with long text">
            <s:Label text="something" />
        </s:FormItem>
        <s:FormItem label="shortLabel">
            <s:TextInput />
        </s:FormItem>
        <s:FormItem label="shortLabel">
            <s:Label text="something" />
        </s:FormItem>
    </s:Form>
</s:Application>

有没有一种简单的方法可以给每个 tile 布局列一个 FormLayout?

在表单布局中,FormItem 容器上的所有第一个项目都是对齐的。

4

2 回答 2

0

您已覆盖表单布局,这就是元素未正确对齐的原因。

据我了解,您需要多列形式。Flex 现在不支持这样的功能。可能的解决方案是: 1. 在容器中使用 2 个表格。在这种情况下,表单项将对齐。2. 定义表单项大小。3.编写您自己的新多列表单布局并分享。

于 2012-11-06T14:11:44.917 回答
0

Spark FormLayout 扩展了 VerticalLayout,将其继承更改为 customLayout 类中的 TileLayout(比如 FormTileLayout),适用于我的项目。

于 2014-08-12T19:42:06.230 回答