Ваш TextView
mainlisttext равен нулю, вы не можете назначить пользовательский шрифт для строк списка таким образом.Что вы можете сделать, так это реализовать свой собственный адаптер (внутренний класс в упражнении, в котором вам нужен адаптер) и настроить все строки новым шрифтом (вы не сказали, какой адаптер вы используете, поэтому я использую ArrayAdapter<String>
,тот же код может быть применен для других типов):
private class CustomAdapter extends ArrayAdapter<String> {
Typeface font;
public CustomAdapter(Context context, int textViewResourceId,
List<String> objects) {
super(context, textViewResourceId, objects);
font = Typeface.createFromAsset(getAssets(),
"fonts/Roboto-Italic.ttf");
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// Note: this will work if your row layout is a single TextView with no other views in it,
// if you have LinearLayouts or other views then search by id in the view returned by super.getView(position, convertView, parent)
TextView text = (TextView) super.getView(position, convertView,
parent);
text.setTypeface(font);
return text;
}
}