StarlingのTextFieldを使うとAS3と同様にしてテキストを表示できる。
(以下の内容はver1.xのみに対応しています。ver.2以降からTextFieldは大幅に変更されました)
var tf:TextField = new TextField(200, 30, "test",FONT_NAME,26,0xff0000);
右寄せ、左寄せなどは、
tf.hAlign = HAlign.RIGHT; tf.vAlign = VAlign.BOTTOM;
とする。これは文字を寄せているだけなので、テキストフィールド全体の中心点についてはpivotXやpivotY、alignPivotなどを使う必要がある。
また、ビットマップフォントが登録されている場合は、そのままビットマップフォントの名前を指定するだけで、それが表示される。
注意事項として、
一つ目については、つねに大きめのサイズを指定することで回避できる。
二つ目は、パフォーマンスが必要とされるところではなるべくビットマップフォントを指定し、文字数が少ない場合はbatchableフラグをtrueにすると結構減る
tf.batchable = true;
3つめについては、たとえば複数行表示で行間を8にしたければ、TextFieldを継承して、formatTextメソッドをオーバーライドする。
class MultiLineTextField extends TextField { public function MultiLineTextField (width:int, height:int, text:String, fontName:String = "Verdana", fontSize:Number = 12, color:uint = 0, bold:Boolean = false) { super(width, height, text, fontName, fontSize, color, bold); } override protected function formatText(textField:flash.text.TextField, textFormat:TextFormat):void { super.formatText(textField, textFormat); textField.multiline = true; textFormat.leading = 8; textField.setTextFormat(textFormat); } }
これ以外のAS3にある細かなテキストの設定もformatText関数で行える
ぺージ情報 | |
---|---|
ぺージ名 : | StarlingのTextField |
ページ別名 : | 未設定 |
ページ作成 : | njf |
閲覧可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |
編集可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |
Counter: 3113,
today: 1,
yesterday: 1
初版日時: 2015-06-03 (水) 07:29:22
最終更新: 2018-04-14 (土) 01:59:27 (JST) (2166d) by njf