Выровняйте содержимое TextField, но сохраните его ширину x высоту - PullRequest
3 голосов
/ 17 марта 2012

В карточной игре я использую TextField посередине, чтобы отобразить номер игрового стола, но также чтобы определить, была ли сыграна игральная карта - используя myTextField.hitTestObject(myCard) - что означает, что положение и размеры TextField могут не изменяться:

enter image description here

Мой текущий код AS3:

        var format:TextFormat = new TextFormat();
        format.color = 0xFFFFFF;
        format.size = 30;
        format.bold = true;

        myTextField.defaultTextFormat = format;
        myTextField.border = true;
        myTextField.borderColor = 0xFFFFFF;
        myTextField.x = W/2-Card.W/2;
        myTextField.y = Card.H;
        myTextField.width = Card.W;
        myTextField.height = Card.H/4;

        addChild(myTextField);

Однако содержимое TextField (String "#2029" на снимке экрана выше) находится не в центреэто.

Я не могу установить _middle.autoSize = TextFieldAutoSize.CENTER, потому что это меняет ширину границы и разрывает hitTestObject().

Есть ли другой способ выровнять текст посередине, пожалуйста?

1 Ответ

12 голосов
/ 17 марта 2012

Установите align свойство TextFormat.

format.align = TextFormatAlign.CENTER;

...