valore dpi di default "grande", "medio" e "piccolo" testo visualizza Android


171

La documentazione (o chiunque) parla dei valori dpi di default

  • TextView grande { android:textAppearance="?android:attr/textAppearanceLarge"}
  • Medium TextView { android:textAppearance="?android:attr/textAppearanceMedium"}
  • Small TextView { android:textAppearance="?android:attr/textAppearanceSmall"}

widget nell'SDK?

Le viste di testo Grandi, medie, piccole e regolari

Per dirla in un altro modo, possiamo replicare l'aspetto di queste visualizzazioni di testo senza usare l' android:textAppearanceattributo?


1
Se stai utilizzando un prodotto IntelliJ come Android Studio, sarai in grado di visualizzare la documentazione ogni volta che premi F1 su android:textAppearanceValuequesto ti darà la dimensione in sp / dp del valore.
androidtitan,

Risposte:


283

Vedi nella directory sdk di Android.

In \platforms\android-X\data\res\values\themes.xml:

    <item name="textAppearanceLarge">@android:style/TextAppearance.Large</item>
    <item name="textAppearanceMedium">@android:style/TextAppearance.Medium</item>
    <item name="textAppearanceSmall">@android:style/TextAppearance.Small</item>

In \platforms\android-X\data\res\values\styles.xml:

<style name="TextAppearance.Large">
    <item name="android:textSize">22sp</item>
</style>

<style name="TextAppearance.Medium">
    <item name="android:textSize">18sp</item>
</style>

<style name="TextAppearance.Small">
    <item name="android:textSize">14sp</item>
    <item name="android:textColor">?textColorSecondary</item>
</style>

TextAppearance.Largesignifica che lo stile sta ereditando dallo TextAppearancestile, devi rintracciarlo anche se vuoi vedere la definizione completa di uno stile.

Link: http://developer.android.com/design/style/typography.html


19

Per dirla in un altro modo, possiamo replicare l'aspetto di queste visualizzazioni di testo senza usare l'attributo android: textAppearance?

Come già detto da Biegleux :

  • piccolo rappresenta 14sp
  • mezzo rappresenta 18sp
  • grande rappresenta 22sp

Se vuoi usare il valore piccolo , medio o grande su qualsiasi testo nella tua app Android, puoi semplicemente creare un dimens.xmlfile nella tua valuescartella e definire la dimensione del testo lì con le seguenti 3 righe:

<dimen name="text_size_small">14sp</dimen>
<dimen name="text_size_medium">18sp</dimen>
<dimen name="text_size_large">22sp</dimen>

Ecco un esempio di TextView con testo di grandi dimensioni dal dimens.xmlfile:

<TextView
  android:id="@+id/hello_world"
  android:text="hello world"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textSize="@dimen/text_size_large"/>

8

A livello di programmazione, è possibile utilizzare:

textView.setTextAppearance(android.R.style.TextAppearance_Large);
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.