metin merkezini android ile hizala


150

Kulağa kolay geldiğini biliyorum. Merkezde bir metin koymak gerekir, ancak metin çok uzun olduğunda aşağıya gitmek gerekir, ama yine de benim xml merkezinde hizalamak gerekir.

İşte benim kod:

 <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>

PaddingTop ve Bottom'u koydum çünkü biraz alana ihtiyacım var. Not: Kodum daha büyük; bir RelativeLayout'ta.


Burada herhangi bir metin stili kullanmadınız
Dinith

Yanıtlar:


381

android:gravityParametreyi de TextViewolarak ayarlayın center.

Farklı düzen parametrelerinin etkilerini test etmek için her öğe için farklı arka plan rengi kullanmanızı öneririz, böylece düzeninizin yerçekimi, düzen_çekimi veya diğerleri gibi parametrelerle nasıl değiştiğini görebilirsiniz.


Teşekkür ederim, işe yaradı, cevabınızı geçerli kılmak için biraz zamana ihtiyacınız var!
Tsunaze

Evet bu doğru. Ama sadece TextView birden fazla satır varsa düşünüyorum. Çünkü sadece 1 tam metin satırı olmadığında, TextView düzeni yatay olarak doldurmaz
peter.bartos

TextView'in androidini ayarlayarak bundan kaçınabilirsiniz: layout_width = "fill_parent"
peter.bartos

2
Kafanız karışmasın android:layout_gravity. Doh! :)
Joshua Pinter


21

xml'de bu şekilde kullan

   <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"
        />

7

Aşağıdakileri kullanabilirsiniz:

<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>

"Center" özelliğinin kullanılabilmesi için mizanpajın göreli olması gerekir.


5

android:gravity="center"TextView içine eklemek hile yapar (üst düzen olmak Relative/Linear)!

Ayrıca, yazı tipi boyutu için dp kullanmaktan kaçınmalısınız. Bunun yerine sp kullanın.


3

TextView'da merkez değeri ile layout_gravity ve gravity ekleyin

<TextView
    android:text="welcome text"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:gravity="center"
    />

2

Sadece bu 2 satırı ekleyin;

android:gravity="center_horizontal"
android:textAlignment="center"

1
android:layout_gravity="center"

veya

android:gravity="center"

her ikisi de benim için çalışıyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.