在纸牌游戏中,我使用中间的TextField来显示比赛桌号码,还可以检测是否已经玩过扑克牌 – 使用myTextField.hitTestObject(myCard) – 这意味着TextField的位置和尺寸可能不会改变:
我目前的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的内容(上面屏幕截图中的字符串“#2029”)不在其中心.
我无法设置_middle.autoSize = TextFieldAutoSize.CENTER,因为这会更改边框的宽度并破坏hitTestObject().
请问有另一种方法可以将文本对齐吗?
解决方法
设置TextFormat的align属性.
format.align = TextFormatAlign.CENTER;