Was ist die Standardtextgröße unter Android?

139

Ich habe eine Mischung aus Schaltflächen und einer eigenen Ansicht, in der ich meine Textgröße mit Paint.setTextSize () einstelle. Ich möchte, dass die Textgröße genauso aussieht wie der Text auf der Schaltfläche. Jetzt kann ich natürlich die Textgröße der Schaltfläche auf zB 18sp einstellen und in meiner Ansicht 18 verwenden. Aber für eine bessere Integration möchte ich einfach wissen, welche Textgröße für Schaltflächen "normal" ist. Nach meinem Test sollte es ungefähr 12sp sein, aber ich habe keine Dokumentation dazu gefunden.

Wenn Sie die Standardgrößen beibehalten, wird in der Ansicht viel zu kleiner Text angezeigt.

Vielleicht sollte ich noch einen anderen Ansatz für dieses Problem verwenden?

Rene
quelle
1
Nun, es scheint unbekannt zu sein. Also wähle ich 16sp. Das sieht gut aus, ist aber nicht zu klein (ich brauche bereits eine Brille oder ein HTC HD :-) Um die Schriftart für die Grafiken zu skalieren, müssen Sie übrigens zuerst den Skalierungsfaktor für Ihr Gerät mit float scale = getContext ( ) .getResources (). getDisplayMetrics (). Dichte; Multiplizieren Sie dies mit Ihrer gewünschten Textgröße in sp und legen Sie die Größe mit Paint.setTextSize fest.
Rene
1
Mögliches Duplikat von Was sind die Standard-Schriftmerkmale in Android?
Marquis von Lorne
Wenn Sie im Web nach abc_text_size_medium_material(einer der Standardgrößenabmessungen) suchen, erhalten Sie die XML-Datei Materialabmessungen von App Compat, die alle Standardgrößen enthält.
Richard Le Mesurier

Antworten:

42

Dadurch wird die Standardgröße des Texts auf der Schaltfläche in Pixel zurückgegeben.


Kotlin

val size = Button(this).textSize


Java

float size = new Button(this).getTextSize();
Sonny
quelle
204

Allgemein:

Drei "Standard" -textSize-Werte:

 - 14sp
 - 18sp
 - 22sp

Diese Werte werden in den folgenden TextAppearances definiert:

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

Weitere Informationen zur Typografie finden Sie in den Gestaltungsrichtlinien

Bezogen auf Ihre Frage:

Wenn Sie keine benutzerdefinierte textSize oder textAppearance festlegen, wird TextAppearance.Small verwendet.


Update: Materialdesign:

Neue Richtlinien für Schriftarten und Schriftarten. Die Standardregel von 14sp bleibt (Körper).

Beispiele zum Festlegen von Textdarstellungen

AppCompat-Version:

android: textAppearance = "@ style / TextAppearance.AppCompat.Body"

Lollipop und höher Version:

android: textAppearance = "@ android: style / TextAppearance.Material.Body"

Tobrun
quelle
1
Möchte zur obigen Liste hinzufügen, 12spfürMicro
Ram Patra
2
Auf der anderen Seite TextApperance.Microist eigentlich nicht vorhanden. Siehe diese Frage
Andrew T.
1
Interessanterweise sind die kleinen / mittleren / großen Größen auch im Material-Thema immer noch 14/18/22, obwohl 18 und 22 keine Standardgrößen gemäß der Materialtypografie-Anleitung sind. Vermutlich dient dies der Abwärtskompatibilität.
Karsten
18

Standardwerte 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>
gatti
quelle
3

Standardgrößen für alles finden Sie im Google Style Guide.

Hier sind die Werte, für die sie für Schaltflächen verwendet werden:

Tasten

Englisch: Medium 14sp, alle Kappen

Dicht: Mittel 15sp, alle Kappen

Groß: Fett 15sp

handlungsunfähig
quelle
2

Die Standardtextgröße der Textansicht

wenn Sie keine der folgenden Angaben verwendet haben

TextAppearance.Small

TextAppearance.Medium

TextAppearance.Large

dann ist die Standardgröße 14sp

Sunil Kumawat
quelle
0

Die Standardtextgröße variiert von Gerät zu Gerät

Typ Dimension Micro 12 sp Klein 14 sp Mittel 18 sp Groß 22 sp

Hoque MD Zahidul
quelle