いざ中央揃え…あれ?
TextViewに入れた文字列を中央揃えで表示したい!
TextViewにはsetTextAlignment()
という、すごくそれらしいメソッドがあります。
しかしこいつ、どんな値を設定しても、文字列は中央揃えになってくれませんでした。
解決策
先に結論から。
*setGravity()
*を使いましょう。
Android StudioのGUIエディタでは、gravity
と書かれた項目です。
_layout:gravity
_ではないので注意しましょう!!!
なぜsetTextAlignment()
では中央揃えにならないのか
実はsetTextAlignment()
は、TextViewではなく、その基底クラスのViewのメソッド。
どんな処理をしているのか、イマイチよくわかりません。
(SDKのソース読んでも、なにがしかのレイアウトに影響するフラグをゴリゴリいじってることしかわかりませんでした)
詳しい方、このメソッドの存在意義を教えて下さい…
追記
@bilyakudan が以下のリンクを教えてくれました。
Text/Layout Alignment in Android (textAlignment, gravity)
結局、setTextAlignment()
が何をしてくれるのかは闇の中のようです…