35
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

TextViewの文字列が中央揃えになってくれなくて悲しい

Last updated at Posted at 2014-07-31

いざ中央揃え…あれ?

TextViewに入れた文字列を中央揃えで表示したい!

TextViewにはsetTextAlignment()という、すごくそれらしいメソッドがあります。
しかしこいつ、どんな値を設定しても、文字列は中央揃えになってくれませんでした。

解決策

先に結論から。

*setGravity()*を使いましょう。

Android StudioのGUIエディタでは、gravityと書かれた項目です。
_layout:gravity_ではないので注意しましょう!!!

gravityの方

なぜsetTextAlignment()では中央揃えにならないのか

実はsetTextAlignment()は、TextViewではなく、その基底クラスのViewのメソッド。
どんな処理をしているのか、イマイチよくわかりません。
(SDKのソース読んでも、なにがしかのレイアウトに影響するフラグをゴリゴリいじってることしかわかりませんでした)
詳しい方、このメソッドの存在意義を教えて下さい…

追記
@bilyakudan が以下のリンクを教えてくれました。

Text/Layout Alignment in Android (textAlignment, gravity)

結局、setTextAlignment()が何をしてくれるのかは闇の中のようです…

35
24
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
35
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?