Je veux avoir un style de police différent pour l'indice et le style de police pour le texte tapé dans edittext. Par exemple. Disons que la taille de la police est de 12 et son type normal. Mais lorsque l'utilisateur commence à taper dans l'edittext, la taille de la police du texte tapé devrait devenir 14 et gras. encore une fois si l'utilisateur supprime le texte, l'indice devrait être du type mentionné ci-dessus.Style de police indice différent et dactylographié dans le style de police de texte android
6
A
Répondre
4
Vous pouvez modifier par programme la couleur de pointe pour le rendre différent de style de police tapé edittext en utilisant le code suivant
editTextId.setHintTextColor(Color.alpha(006666));
0
La réponse déjà donnée est correcte mais précise actuellement une couleur différente est également possible dans le Fichier XML via l'attribut android: textColorHint. Par exemple, vous pourriez faire quelque chose comme ça (en supposant que vous avez défini votre my_favourite_colour correctement comme ressource):
<EditText
... other properties here ...
android:textColorHint="@color/my_favourite_colour"
</EditText>
0
Vous pouvez y parvenir en utilisant SpannableString
et MetricAffectingSpan
. Vous pourrez changer la police, la taille et le style de l'indice.
1) Créer un objet personnalisé Hint
:
import android.graphics.Typeface;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.style.MetricAffectingSpan;
public class CustomHint extends SpannableString
{
public CustomHint(final CharSequence source, final int style)
{
this(null, source, style, null);
}
public CustomHint(final CharSequence source, final Float size)
{
this(null, source, size);
}
public CustomHint(final CharSequence source, final int style, final Float size)
{
this(null, source, style, size);
}
public CustomHint(final Typeface typeface, final CharSequence source, final int style)
{
this(typeface, source, style, null);
}
public CustomHint(final Typeface typeface, final CharSequence source, final Float size)
{
this(typeface, source, null, size);
}
public CustomHint(final Typeface typeface, final CharSequence source, final Integer style, final Float size)
{
super(source);
MetricAffectingSpan typefaceSpan = new CustomMetricAffectingSpan(typeface, style, size);
setSpan(typefaceSpan, 0, source.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
}
}
2) Créer personnalisé objet MetricAffectingSpan
:
import android.graphics.Typeface;
import android.text.TextPaint;
import android.text.style.MetricAffectingSpan;
public class CustomMetricAffectingSpan extends MetricAffectingSpan
{
private final Typeface _typeface;
private final Float _newSize;
private final Integer _newStyle;
public CustomMetricAffectingSpan(Float size)
{
this(null, null, size);
}
public CustomMetricAffectingSpan(Float size, Integer style)
{
this(null, style, size);
}
public CustomMetricAffectingSpan(Typeface type, Integer style, Float size)
{
this._typeface = type;
this._newStyle = style;
this._newSize = size;
}
@Override
public void updateDrawState(TextPaint ds)
{
applyNewSize(ds);
}
@Override
public void updateMeasureState(TextPaint paint)
{
applyNewSize(paint);
}
private void applyNewSize(TextPaint paint)
{
if (this._newStyle != null)
paint.setTypeface(Typeface.create(this._typeface, this._newStyle));
else
paint.setTypeface(this._typeface);
if (this._newSize != null)
paint.setTextSize(this._newSize);
}
}
3) Utilisation:
Typeface newTypeface = Typeface.createFromAsset(getAssets(), "AguafinaScript-Regular.ttf");
CustomHint customHint = new CustomHint(newTypeface, "Enter some text", Typeface.BOLD_ITALIC, 60f);
// CustomHint customHint = new CustomHint(newTypeface, "Enter some text", Typeface.BOLD_ITALIC);
// CustomHint customHint = new CustomHint(newTypeface, "Enter some text", 60f);
// CustomHint customHint = new CustomHint("Enter some text", Typeface.BOLD_ITALIC, 60f);
// CustomHint customHint = new CustomHint("Enter some text", Typeface.BOLD_ITALIC);
// CustomHint customHint = new CustomHint("Enter some text", 60f);
customEditText.setHint(customHint);
dix
Questions connexes
- 1. Style de police écrasé - Android
- 2. Texte Le style de police n'apparaît pas
- 3. Changer le style de police
- 4. Texte avec police personnalisée et style gras
- 5. Changer le style de police de la zone de texte
- 6. Comment intégrer le style de police dans Android mobile?
- 7. Comment changer le style de police dynamiquement dans TextView?
- 8. Changer le style de police pour richtextbox
- 9. ggplot2: Style de police dans l'expression d'étiquette
- 10. Vous avez sélectionné la taille et le style de police
- 11. iTextSharp importation style de police msmincho
- 12. Style de police à dropdownlist asp.net
- 13. Le style de police de l'application Flex est différent entre Flash Builder et MXMLC
- 14. WPF, Style de police pour plusieurs contrôles
- 15. comment changer le style de police du texte dans la zone de texte sur le clic?
- 16. changement simple style UIBarButtonItem police
- 17. Le style de police ne fonctionne pas sur le frontal
- 18. Android Listview: Comment changer le style de police et la couleur de police en XML? et diviseur d'affichage en xml
- 19. Le style de police ne fonctionne pas dans FireFox
- 20. Comment définir le style ou la police de texte d'un TextView dans Android?
- 21. Définir le style de police au champ de formule
- 22. style différent de ligne dans DataGrid FLEX
- 23. Modification de la disposition CSS avec le style de police
- 24. Ajustement du style de police pour un RichTextBox dans vb.net
- 25. police par défaut dans la feuille de style flash as3
- 26. Modifier un style de police dans un TextBox
- 27. ordre de style de police en toile drawText
- 28. Comment définir le style de police en gras, italique et souligné dans un TextView Android?
- 29. Changer le style de police (gras, italique, gras) en C#
- 30. Comment changer le style de police pour spinner article