Search code examples
androidxamarinmvvmcrossfont-awesome

Change the font of an Mvx.MvxGridView?


I'm trying to use FontAwesome with Xamarin.Android and MvvmCross. I have a Mvx.MvxGridView that data binds to an item source that returns the unicode value for FontAwesome. The Mvx.MvxGridView uses an item template (local:MvxItemTemplate) for the template of each grid block. How can I change the Mvx.MvxGridView or MvxItemTemplate font?


Solution

  • You will need to set the font in your adapter. It will look something like this.

    public override void OnBindViewHolder(RecyclerView.ViewHolder viewHolder, int position)
    {
                var item = _menuItems[position];
                var holder = viewHolder as MenuItemAdapterViewHolder;
                holder.icon.SetTypeFace(Typeface.CreateFromAsset(Application.Context.Assets, "<Insert file path here>"), TypefaceStyle.Normal);
                holder.icon.Text = item.IconFont;
    }