menyelaraskan pusat teks dengan android


149

Saya tahu itu terdengar mudah. Saya perlu meletakkan teks di tengah, tetapi ketika teks terlalu panjang itu perlu pergi di bawah, tetapi masih menyelaraskan di tengah xml saya.

Ini kode saya:

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

Saya meletakkan paddingTop dan Bawah karena saya butuh ruang. PS: Kode saya lebih besar; itu dalam RelativeLayout.


Di sini Anda tidak menggunakan gaya teks apa pun
Dinith

Jawaban:


380

Tetapkan juga android:gravityparameter TextViewke center.

Untuk menguji efek dari parameter tata letak yang berbeda, saya sarankan untuk menggunakan warna latar belakang yang berbeda untuk setiap elemen, sehingga Anda dapat melihat bagaimana tata letak Anda berubah dengan parameter seperti gravitasi, tata letak_gravitas atau lainnya.


Terima kasih, itu berhasil, hanya perlu waktu untuk membuktikan jawaban Anda!
Tsunaze

Ya itu benar. Tapi saya pikir hanya jika TextView memiliki lebih dari satu baris. Karena hanya dengan 1 baris teks yang tidak lengkap, TextView tidak akan mengisi tata letak secara horizontal
peter.bartos

Anda dapat menghindari ini dengan mengatur android TextView: layout_width = "fill_parent"
peter.bartos

2
Jangan bingung dengan android:layout_gravity. Doh! :)
Joshua Pinter


21

gunakan cara ini di 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"
        />

7

Anda dapat menggunakan yang berikut ini:

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

Tata letak harus relatif untuk properti "pusat" yang akan digunakan.


5

Menambahkan android:gravity="center"di TextView Anda akan melakukan trik (menjadi tata letak induk Relative/Linear)!

Selain itu, Anda harus menghindari penggunaan dp untuk ukuran font. Gunakan sp sebagai gantinya.


3

tambahkan layout_gravity dan gravitasi dengan nilai tengah pada TextView

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

2

Tambahkan saja 2 baris ini;

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

1
android:layout_gravity="center"

atau

android:gravity="center"

keduanya bekerja untuk saya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.