Mai mult
Cum pot centrul text orizontal și vertical într-un TextView?
Cum pot centra textul pe orizontală și pe verticală într-un TextView, așa că se pare că exact în mijlocul TextView
în "Android"?
1925
64
Am'm presupunând că're folosind XML layout.
Puteți folosi, de asemenea, gravitatea
center_vertical " sau " center_horizontal
în funcție de nevoie de dumneavoastră.și ca @stealthcopter comentat în java:
.setGravity(Gravitația.CENTER);
Acest lucru va face truc
De asemenea, puteți configura dinamic folosind:
Aceasta funcționează atunci când este utilizat cu un RelativeLayout unde layout's înălțimea & lățime sunt setate pentru a wrap_content.
De asemenea, puteți utiliza combinația:
Apoi, dacă textview lățimea este mai mare decât "fill_parent" textul va mai fi aliniat la stânga (nu este centrat și cu gravitate stabilite numai pentru a "center").
Aplica gravitate:
Vertical:
În XML:
Există două moduri de a face acest lucru.
Primul din codul XML. Ai nevoie să acorde o atenție la "gravității" Atribut. De asemenea, puteți găsi acest atribut în Editorul Grafic; acesta poate fi mai ușor decât XML EDITOR.
Pentru scenariu specific, valorile de greutate va fi:
În editorul grafic, veți găsi toate valorile posibile, chiar și a vedea rezultatele.
Dacă utilizați TableLayout asigurați-vă că pentru a seta gravitatea TableRows la centru, de asemenea. În caz contrar, acesta nu va funcționa. Cel puțin nu't de lucru cu mine, până când am stabilit gravitatea TableRow la centru.
De exemplu, ca aceasta:
Aveți nevoie pentru a seta TextView Gravitație (Centru Orizontal & Centru Vertical) astfel:
și
Și dinamic folosind:
În opinia mea,
este mai bine decât,
care este mai bună decât,
cel puțin pentru formatarea textului.
Pentru Aspect Liniar: În XML folosi ceva de genul asta
Pentru a face acest lucru la timp a alerga folosi ceva de genul asta în activitatea dvs.
Pentru Raport de Aspect: în XML folosi ceva de genul asta
Pentru a face acest lucru la timp a alerga folosi ceva de genul asta în activitatea dvs.
Utilizarea în fișierul XML.
Layout fișier
sau:
Utilizați acest lucru în interiorul clasei Java
Utilizați această pentru aspect relativ
și pentru alte aspect
Dacă
TextView's
înălțime și lățime suntfolie de conținut
apoi textul înTextView
fie mereu centrat. Dar dacăTextView's
lățimematch_parent
și înălțimea este de `match_parent " sau "wrap_content "" atunci trebuie să scrie codul de mai jos:Pentru RelativeLayout:
Pentru LinearLayout:
În timp ce folosind gravitația lucrează pentru TextView, acolo's o metodă alternativă puse în aplicare în API de nivel 17 -
Don't știu diferența, dar funcționează prea. Cu toate acestea numai pentru nivelul API 17 sau mai mare.
În
RelativeLayout
, va fi frumos cu ea.Și încă un "Buton" și orice altceva vă puteți adăuga.
Următoarele funcționează bine pentru mine.
Cel mai simplu mod (care este surprinzator de menționat doar în comentarii, prin urmare, de ce am posta ca un răspuns) este:
Puteți seta doar "gravității" de textview în "CENTRU".
Dacă sunteți încercarea de a centrul de text pe un TableRow într-un TableLayout, aici este modul în care am realizat acest lucru:
Aici este răspunsul meu că am folosit în aplicația mea. Acesta arată textul în centrul ecranului.