2013-04-24 18 views

risposta

37

Tutto quello che posso vedere è che textAlignment è un membro della classe View e la gravità è il membro della classe TextView. Quindi per TextView e le sue sottoclassi è possibile utilizzare la gravità mentre è possibile utilizzare TextAlignment per tutte le viste.

Dato che TextView e le sue sottoclassi necessitano di più funzioni di allineamento del testo, è possibile vedere che ci sono più opzioni nella gravità in cui in TextAlignment ci sono solo opzioni di base. Anche se è solo mia supposizione perché non ho trovato alcuna documentazione chiara sulla differenza.

È possibile visualizzare questi due collegamenti di documentazione: textAlignment e gravity.

3

Per quanto ho visto TextAlignment sembra essere in gran parte inutilizzato. Per la sua descrizione, dovrebbe fare solo l'allineamento destro o sinistro. La gravità sembra essere un testo ottimizzato.

3

Con API 15, android:textAlignment potrebbe non avere il risultato desiderato. Lo snippet seguente tenta di centrare il primo oggetto TextView utilizzando android:textAlignment="center". Il secondo utilizza android:gravity="center_horizontal". Il textAlignment non ha effetto mentre la gravità funziona bene. Con API 17+, textAlignment centra il testo come previsto.

Per essere certi che il testo sia allineato correttamente con tutte le versioni, andrei con gravità.

<LinearLayout 
    android:layout_width="50dp" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="5dp" 
     android:text="Fri" 
     android:textAlignment="center" 
     android:textSize="16sp" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="29" 
     android:gravity="center_horizontal" 
     android:textSize="18sp" /> 

</LinearLayout> 

risultante layout in API 15:
Resulting layout in API 15

risultante layout in API 17+:
Resulting layout in API 17+

Problemi correlati