Stellen Sie eine benutzerdefinierte schriftart in RecyclerView adapter
Habe ich ein fragment, das lädt ein RecyclerView, aber ich möchte hinzufügen, um eine benutzerdefinierte schriftart auf die TextView in eine der RecyclerView items. Wo in meinem adapter sollte ich die schriftart? Auch wie genau ändere ich die schriftart?
Kann ich nicht verwenden Sie diesen code,
Typeface font = Typeface.createFromAsset((getAssets(),
"myfont.ttf");
weil ich bin nicht in der Tätigkeit. Wie also sollte ich die schriftart?
Dies ist mein adapter,
public class DiscoverRecyclerAdapter
extends RecyclerView.Adapter<DiscoverRecyclerAdapter.ViewHolder> {
private String[] mDataset;
public static class ViewHolder extends RecyclerView.ViewHolder {
public TextView mText;
public ViewHolder(android.support.v7.widget.CardView v) {
super(v);
mText = (TextView) v.findViewById(R.id.text);
}
}
public DiscoverRecyclerAdapter(String[] myDataset) {
mDataset = myDataset;
}
@Override
public DiscoverRecyclerAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
int viewType) {
View v = LayoutInflater.from(parent.getContext())
.inflate(R.layout.item_discover, parent, false);
ViewHolder vh = new ViewHolder((android.support.v7.widget.CardView)v);
return vh;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
holder.mText.setText(mDataset[position]);
}
@Override
public int getItemCount() {
return mDataset.length;
}
}
Wobei innerhalb der adapter sollte ich die schriftart und wie kann ich die schriftart festlegen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entweder in
onCreateViewHolder()
oder in IhremViewHolder
Konstruktor.Mit diesem code. Erstellen Sie die
Typeface
imActivity
(oder fragment, wenn dieRecyclerView
ist in einem fragment). Übergeben Sie dieTypeface
in dieDiscoverRecyclerAdapter
. Verwenden Sie dieTypeface
imonCreateViewHolder()
, entweder direkt oder durch übergabe an denViewHolder
Konstruktor. Insbesondere, erstellen Sie präzise eine Instanz derTypeface
, nicht einen pro Zeile.diesem sollte dies beheben, fügen Sie diese zu Ihrem recyclerviewadapter viewHolder Konstruktor
fügen Sie in onCreateViewHolder()
Zunächst sollte dies in der CustomViewHolder Konstruktor:
Andere als das, stellen Sie sicher, dass Ihr "fonts" - Ordner unter "assets" und Ihre "assets" - Ordner unter "main" - Ordner (und nicht in "res").