2014-09-14 7 views
5

Desidero modificare lo spazio di riga di una TextView in modo programmatico. Ho cercato e ho trovato setLineSpacing. Il problema è questo, ottiene due parametri, ho provato tanti valori ma non ho potuto ottenere il risultato che volevo. Devo solo dare lo spazio delle linee di TextView 5dp, che cosa dovrei inserire nel metodo per assegnargli 5 linee dp?Come assegnare lo spazio delle linee 5dp a TextView a livello di codice

risposta

12

Perché non è possibile utilizzare setLineSpacing? Questo è esattamente quello che userei.

Basato sul Android Documentation:

pubblico setLineSpacing void (float aggiungere, float mult)

Ogni linea avrà la sua altezza moltiplicata per mult e avete ancora aggiunto ad essa.

Così qui è quello che si può scegliere di fare:

myTextView.setLineSpacing(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 5.0f, getResources().getDisplayMetrics()), 1.0f); 

oppure è possibile modificare il layout XML di android:lineSpacingExtra. (Vedi Android Documentation.)

<TextView 
    android:id="@+id/txtview" 
    android:layout_height="wrap_content" 
    android:layout_width="fill_parent" 
    android:lineSpacingExtra="5dp" /> 
+0

Non si è preso cura dell'unità 'dp'. – timrau