J'utilise de nouvelles autosize fonctionnalité ajoutée à l'appui de la bibliothèque de 26. J'ai lu une documentation qui peut être trouvé ici : https://developer.android.com/preview/features/autosizing-textview.html
Je suppose qu'il doit travailler de cette façon: Vous pouvez activer la fonction d'auto-calibrage de cet attribut: app:autoSizeTextType="uniform"
. Je pense qu' TextView
doit utiliser tout l'espace disponible pour afficher un texte en entier (et pas seulement une partie, il ne devrait pas être recadrée) et l' textSize
devrait être aussi grand que possible. Si vous avez besoin de limiter au maximum ou minimum de la taille du texte vous pouvez ensuite utiliser ces deux attributs:
app:autoSizeMinTextSize="XXsp" // (you can also use px or dp values.)
ou
app:autoSizeMaxTextSize="XXsp"
So far So good. Disons que j'ai besoin d'un TextView avec 56dp largeur. J'ai des textes avec une longueur différente et je veux mettre ces textes à ce TextView
. Il devrait être automatiquement redimensionnée afin qu'il affiche le texte en entier (tous les caractères + pas recadrée) dans le plus grand possible textSize
.
C'est mon TextView:
<android.support.v7.widget.AppCompatTextView
android:id="@+id/vName"
style="@style/TextView.AutoSize"
android:layout_width="56dp"
android:gravity="bottom|center_horizontal"
android:maxLines="1"
app:autoSizeMinTextSize="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toTopOf="@id/vGuideline"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
Malheureusement, le mode texte est recadrée. Je voulais mettre cette Chaîne comme un texte à la TextView ci-dessus: "Groupa" mais c'est le résultat:
(TextView est à l'intérieur de ConstraintLayout jaune cercle d'arrière-plan.)
Comme vous pouvez le voir le textview n'est pas redimensionnée à tous. Avez-vous une idée de quoi faire?
Merci.