Je veux taper le numéro de téléphone en persan dans android EditText. J'ai mis la police Farsi pour éditer le texte mais cela n'a pas fonctionné. J'ai aussi beaucoup cherché, mais tous ont discuté de définir la police Farsi à texte statique dans Textview ne pas taper EditText. Comment puis-je atteindre cet objectif ? Mercine peut pas taper le nombre persan en android modifier le texte
-2
A
Répondre
2
Essayez ceci:
public class CustomFontEditText extends EditText {
private Context context;
private AttributeSet attrs;
private int defStyle;
public CustomFontEditText(Context context) {
super(context);
this.context=context;
init();
}
public CustomFontEditText(Context context, AttributeSet attrs) {
super(context, attrs);
this.context=context;
this.attrs=attrs;
init();
}
public CustomFontEditText(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
this.context=context;
this.attrs=attrs;
this.defStyle=defStyle;
init();
}
private void init() {
Typeface font=Typeface.createFromAsset(getContext().getAssets(), "fonts/myfont.ttf");
this.setTypeface(font);
}
@Override
public void setTypeface(Typeface tf, int style) {
tf=Typeface.createFromAsset(getContext().getAssets(), "fonts/farsi.ttf");
super.setTypeface(tf, style);
}
@Override
public void setTypeface(Typeface tf) {
tf=Typeface.createFromAsset(getContext().getAssets(), "fonts/farsi.ttf");
super.setTypeface(tf);
}
REMARQUE:
Remplacez farsi.ttf
avec le nom de la police et utiliser CustomFontEditText
au lieu de défaut EditText
dans votre xml