web-dev-qa-db-fra.com

valeur dpi des vues de texte par défaut "grandes", "moyennes" et "petites" android

La documentation (ou qui que ce soit) parle-t-elle des valeurs dpi du paramètre par défaut?

  • Large TextView {Android:textAppearance="?android:attr/textAppearanceLarge"}
  • Medium TextView {Android:textAppearance="?android:attr/textAppearanceMedium"}
  • Petit TextView {Android:textAppearance="?android:attr/textAppearanceSmall"}

des widgets dans le SDK?

The Large, medium, small and regular text views

En d'autres termes, pouvons-nous reproduire l'apparence de ces vues de texte sans utiliser l'attribut Android:textAppearance?

169
Vinay Wadhwa

Voir dans le répertoire Android sdk.

Dans \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>

Dans \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.Large signifie que le style hérite du style TextAppearance, vous devez le tracer également si vous souhaitez voir la définition complète d'un style.

Lien: http://developer.Android.com/design/style/typography.html

281
biegleux

Autrement dit, pouvons-nous reproduire l'apparence de ces vues de texte sans utiliser l'attribut Android: textAppearance?

Comme biegleux déjà dit:

  • petit représente 14sp
  • moyen représente 18 verges
  • large représente 22sp

Si vous souhaitez utiliser le petit , moyen ou grande valeur sur tout texte de votre application Android, vous pouvez simplement créer un fichier dimens.xml dans votre dossier values et définissez la taille du texte à l'aide des 3 lignes suivantes:

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

Voici un exemple de TextView avec un grand texte à partir du fichier dimens.xml:

<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"/>
17
jfmg

Par programme, vous pouvez utiliser:

textView.setTextAppearance(Android.R.style.TextAppearance_Large);
8
doctorram