J'utilise ViewPagerIndicator de Jake Wharton et j'essaie actuellement d'implémenter une police personnalisée sur l'un de mes fragments. J'ai essayé d'utiliser ce code:
TextView txt = (TextView) findViewById(R.id.Zipcode);
Typeface font = Typeface.createFromAsset(getAssets(), "fonts/customfont.ttf");
txt.setTypeface(font);
Dans onCreate
pour l'activité principale, il en résulte une exception de pointeur null dans logcat et occasionnellement typeface cannot be made
. J'ai également essayé de définir la police dans le fragment lui-même dans onCreate
et onCreateView
, mais findViewById
et getAssests()
sont des méthodes inconnues dans la portée du fragment.
Je ne parviens pas à déterminer si la police de caractères est le problème ou si j'essaie de définir le problème.
Tu peux essayer ça
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_layout, container, false);
TextView txt = (TextView) v.findViewById(R.id.Zipcode);
Typeface font = Typeface.createFromAsset(getActivity().getAssets(), "fonts/customfont.ttf");
txt.setTypeface(font);
return v;
}
avec cela, vous pouvez avoir le contexte dans la portée du fragment et obtenir la vue et les actifs
Définir le caractère dans votre classe ViewHolder`
Typeface customFontBold= Typeface.createFromAsset(getActivity().getAssets(),"fonts/JosefinSans-Bold.ttf");
comme ça.