2011-09-06 5 views
115

私はそれが簡単に聞こえます。テキストを中央に配置する必要がありますが、テキストが長すぎる場合は、下に移動する必要がありますが、xmlの中央に配置する必要があります。私はいくつかのスペースを必要とするので、私はpaddingTopとボトムをつけテキストセンターとアンドロイドを合わせる

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/showdescriptioncontenttitle" 
    android:paddingTop="10dp" 
    android:paddingBottom="10dp" 
    android:layout_centerHorizontal="true" 
> 
    <TextView 
     android:id="@+id/showdescriptiontitle" 
     android:text="Title" 
     android:textSize="35dp" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
    /> 
</LinearLayout> 

は、ここに私のコードです。 PS:私のコードはもっと大きいです。 RelativeLayoutにあります。

答えて

311

android:gravityのパラメータもTextViewからcenterに設定します。

さまざまなレイアウトパラメータの効果をテストするには、すべての要素に異なる背景色を使用することをおすすめします。その結果、レイアウトがgrav、layout_gravityなどのパラメータでどのように変化するかを確認できます。

+0

に中央値とlayout_gravityと重力を追加するには、それが働いた、ありがとうだけで有効なあなたの答えにいくつかの時間を必要とします! – Tsunaze

+1

そして、アンドロイド:layout_centerHorizo​​ntal = "true"はもう必要ないことがわかりました。 – Tsunaze

+0

はい、そうです。しかし、TextViewに複数の行がある場合にのみ、私は思っています。 TextViewは1行ではないため、TextViewはレイアウトを水平に塗りつぶすことはありません –

4

次を使用することができます。

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/showdescriptioncontenttitle" 
    android:paddingTop="10dp" 
    android:paddingBottom="10dp"> 

<TextView 
     android:id="@+id/textview1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:text="Your text" 
     android:typeface="serif" /> 
</LinearLayout> 

レイアウトを使用する「センター」プロパティの相対的である必要があります。あなたのTextViewにandroid:gravity="center"を追加するXML

<TextView 
     android:id="@+id/myText" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="Time is precious, so love now." 
     android:gravity="center" 
     android:textSize="30dp" 
     android:textColor="#fff" 
     /> 
14

使用この方法は、(親レイアウトがRelative/Linearであること)トリックを行います!

また、フォントサイズにdpを使用しないでください。代わりにspを使用してください。

1

のTextView

<TextView 
    android:text="welcome text" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_gravity="center" 
    android:gravity="center" 
    /> 
関連する問題