Qual è la dimensione del testo predefinita su Android?


139

Ho una combinazione di pulsanti e una propria vista, in cui ho impostato la dimensione del mio testo usando Paint.setTextSize (). Voglio che le dimensioni del testo siano identiche a quelle del pulsante. Ora, ovviamente, posso impostare la dimensione del testo del pulsante, ad esempio 18sp, e usare 18 a mio avviso. Ma per una migliore integrazione, vorrei semplicemente sapere quale dimensione del testo è "normale" per i pulsanti. Dal mio test, dovrebbe essere qualcosa di simile a 12sp, ma non ho trovato alcuna documentazione su questo.

Lasciare le dimensioni predefinite lascia un testo troppo piccolo nella vista.

Forse dovrei usare ancora un altro approccio a questo problema?


1
Bene, sembra che non sia noto. Quindi scelgo 16sp. Sembra abbastanza buono, pur non essendo troppo piccolo (ho già bisogno degli occhiali o di un HTC HD :-) A proposito, per ridimensionare il carattere per la grafica devi prima trovare il fattore di ridimensionamento per il tuo dispositivo con float scale = getContext ( .) .getResources () getDisplayMetrics () densità.; Moltiplicalo con la dimensione del testo desiderata in sp e imposta la dimensione con Paint.setTextSize.
Rene,


La ricerca nel Web abc_text_size_medium_material(una delle dimensioni delle dimensioni standard) fornisce il file XML delle dimensioni dei materiali da App Compat che contiene tutte le dimensioni standard.
Richard Le Mesurier,

Risposte:


42

Ciò restituirà la dimensione predefinita del testo sul pulsante in pixel.


Kotlin

val size = Button(this).textSize


Giava

float size = new Button(this).getTextSize();

204

In generale:

Tre valori di default "textSize":

 - 14sp
 - 18sp
 - 22sp

Questi valori sono definiti nelle seguenti TextAppearances:

 - TextAppearance.Small
 - TextAppearance.Medium
 - TextAppearance.Large

Ulteriori informazioni sulla tipografia sono disponibili nelle linee guida di progettazione

In relazione alla tua domanda:

Se non imposti un textSize o textAppear personalizzato, verrà utilizzato TextAppearance .


Aggiornamento: design del materiale:

Nuove linee guida relative a font e caratteri tipografici. Resta la regola standard di 14sp (corpo).

Esempi su come impostare textappearances

Versione AppCompat:

Android: textAppearance = "@ stile / TextAppearance.AppCompat.Body"

Lecca-lecca e versione superiore:

Android: textAppearance = "@ Android: Stile / TextAppearance.Material.Body"


1
Vorrei aggiungere all'elenco sopra, 12spperMicro
Ram Patra

2
D'altra parte, TextApperance.Microè in realtà inesistente. Vedi questa domanda
Andrew T.

1
È interessante notare che, anche nel tema dei materiali, le dimensioni piccole / medie / grandi sono ancora 14/18/22, anche se 18 e 22 non sono dimensioni standard secondo la guida alla tipografia dei materiali. Presumibilmente questo è per compatibilità con le versioni precedenti.
Karsten,


18

Valori predefiniti in appcompat-v7

<dimen name="abc_text_size_body_1_material">14sp</dimen>
<dimen name="abc_text_size_body_2_material">14sp</dimen>
<dimen name="abc_text_size_button_material">14sp</dimen>
<dimen name="abc_text_size_caption_material">12sp</dimen>
<dimen name="abc_text_size_display_1_material">34sp</dimen>
<dimen name="abc_text_size_display_2_material">45sp</dimen>
<dimen name="abc_text_size_display_3_material">56sp</dimen>
<dimen name="abc_text_size_display_4_material">112sp</dimen>
<dimen name="abc_text_size_headline_material">24sp</dimen>
<dimen name="abc_text_size_large_material">22sp</dimen>
<dimen name="abc_text_size_medium_material">18sp</dimen>
<dimen name="abc_text_size_menu_material">16sp</dimen>
<dimen name="abc_text_size_small_material">14sp</dimen>
<dimen name="abc_text_size_subhead_material">16sp</dimen>
<dimen name="abc_text_size_subtitle_material_toolbar">16dp</dimen>
<dimen name="abc_text_size_title_material">20sp</dimen>
<dimen name="abc_text_size_title_material_toolbar">20dp</dimen>


3

Puoi trovare dimensioni standard per tutto nella guida di stile di Google .

Ecco i valori che usano per i pulsanti:

pulsanti

Inglese: medio 14sp, tutto maiuscolo

Denso: medio 15sp, tutte maiuscole

Alto: grassetto 15sp


2

la dimensione del testo predefinita della visualizzazione del testo

se non hai usato nessuno dei seguenti

TextAppearance.Small

TextAppearance.Medium

TextAppearance.Large

quindi la dimensione predefinita è 14sp


0

La dimensione del testo predefinita varia da dispositivo a dispositivo

Tipo Dimensione Micro 12 sp Piccola 14 sp Media 18 sp Grande 22 sp

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.