Размер TextField во Flex - PullRequest
       14

Размер TextField во Flex

0 голосов
/ 18 февраля 2011

Я конвертирую проект кода из Flash AS 3 во Flex 4. У меня проблема с элементами управления TextField.Текст, который помещен в него, не появляется.Я проверил это полностью, и его ширина всегда равна 4. Независимо от того, какой текст помещен в него, он всегда настолько узок.Я знаю, что во Flex я должен явно указать ширину и высоту для всех компонентов, но есть некоторые проблемы:

  1. Я не знаю начальный размер такого поля - я хочу, чтобы оно автоматически определялоего размер основан на тексте, который он хранит
  2. Существует несколько других контейнеров, в которых он содержится, и они также должны автоматически изменять размер, чтобы иметь правильный размер для отображения всего содержимого TextField.

Спасибо

Ответы [ 2 ]

1 голос
/ 18 февраля 2011

Сначала предположим, что вы используете UITextField . Если нет, используйте это.

Имея это вне пути, установите свойство autoSize в TextFieldAutoSize.RIGHT и оставьте ширину неопределенной. Если у вас есть текст с несколькими строками или текст, который не помещается в строке, но вы хотите, чтобы он отображался полностью, вам нужно установить ширину поля в процентах, обычно 100% (процентная ширина от actioncript, ширина от mxml) и оставьте высоту неопределенной.

Если есть какие-либо контейнеры, размер которых необходимо изменить, я бы рекомендовал использовать VBox / HBox вместо того, что вы используете, и для них ширина (и, возможно, высота) также не определена.

Метки - это компоненты, которые уже используют TextFields, настроенные таким образом, чтобы изменять размер только в одну строку. Даже если вы не хотите их использовать, вы можете проверить их исходный код.

Текстовый компонент похож на Label, но допускает несколько строк. Опять же, советую проверить их исходный код.

0 голосов
/ 18 февраля 2011

Возможно, вам следует использовать метку или текстовый ввод вместо текстового поля.Что-то вроде <s:Label text="my text" /> на примере.

...