我正在将代码项目从Flash AS 3转换为Flex 4.我遇到了TextField控件的问题。放置在其中的文本不会出现。我已经彻底检查了它,它的宽度总是等于4.无论放入什么文字,它总是那么窄。我知道在Flex中,我应该明确地为所有组件提供宽度和高度,但是存在一些问题:
由于
答案 0 :(得分:1)
首先,我假设你正在使用UITextField。如果没有,请使用那个。
完成此操作后,将autoSize属性设置为TextFieldAutoSize.RIGHT,并保持宽度未定义。如果您的文本包含多行,或者文本不适合行,但您希望全部显示,则需要将字段的宽度设置为百分比,通常为100%(来自actionscript的percentageWidth,宽度来自mxml),并保持高度未定义。
如果有任何容器需要调整大小,我建议使用VBox / HBox而不是你正在使用的任何容器,并且它们的宽度(以及可能的高度)也是未定义的。
标签是使用已设置的TextField的组件,只能在一行上调整自身大小。即使您不想使用它们,也可以查看它们的源代码。
文本组件类似于Label但允许多行。我再次建议查看他们的源代码。
答案 1 :(得分:0)
也许您应该使用标签或textinput而不是文本字段。
例如<s:Label text="my text" />
之类的东西。