make textEdit填充Flex 4.5中的宽度

时间:2011-10-31 23:32:14

标签: android actionscript-3 flex flex4

如何在Flex 4.5中创建一个组件(使用它为android ..),它有一个textInput,右边是一个按钮,这样按钮的大小固定,textInput扩展为填充父级的剩余空间组件?

这是组件..

<s:HGroup>
    <s:TextInput width="????"/>
    <s:Button width="37" height="37" />
</s:HGroup>

当然我不知道放在宽度上的内容..我还应该为HGroup指定宽度吗?

4 个答案:

答案 0 :(得分:0)

<s:HGroup width="100%">
  <s:TextInput width="width" />
  <s:Button width="37" />
</s:Group>

这里

width = [[android screen width (or group width) - 37 ] / android screen width (or group width) ] * 100

它的百分比..

或尝试将两者设置为100% ..这可能是问题。

修改

只需在您的应用中获取您的屏幕尺寸..这是问题的链接.. How to get screen dimensionshere

答案 1 :(得分:0)

试试这个:

   <fx:Script>

        <![CDATA[
        import spark.components.Button;

        private function onCreate():void
        {
        var yourButton:Button = new Button();
        yourButton.width = 37;
        yourButton.x = 10;
        yourButton.y = 100;
        text.addChild(yourButton);
        }
]]>
    </fx:Script>

    <s:TextInput borderVisible="true" id="text" height="100%" width="100%" creationComplete="onCreate()" />

答案 2 :(得分:0)

HGroupTextInput的宽度设置为100%。

如果您未在HGroup上指定100%宽度,则会为其指定一个默认的静态宽度,该宽度可能比屏幕宽度宽。

<s:HGroup width="100%">
    <s:TextInput width="100%" />
    <s:Button width="37" height="37" />
</s:HGroup>

答案 3 :(得分:0)

Flex根据孩子的父母确定相对大小。

如果你没有给父组一个宽度,那么TextInput就不知道它应该填充到100%。

<s:HGroup width="100%">
    <s:TextInput width="100%"/>
    <s:Button width="37" height="37" />
</s:HGroup>

作为回应“将它们设置为100%”答案的旁注。 Flex允许您将多个百分比宽度设置为100%。 2最终将被加权。那么

<s:HGroup width="100%">
    <s:TextInput width="100%"/>
    <s:Button width="100%"/>
</s:HGroup>

将导致2​​个组件占据屏幕的一半。

<s:HGroup width="100%">
    <s:TextInput width="200%"/>
    <s:Button width="100%"/>
</s:HGroup>

将导致TextInput的宽度是Button

的两倍

如果您想从ActionSript而不是MXML设置基于高度和宽度的百分比,您需要说textInput.percentWidth = 100;