设置ActionMenuView字体系列/字体

时间:2019-07-18 09:14:03

标签: android ios xamarin fonts

我目前正在Xamarin上的应用程序上工作,我正在尝试设置ActionMenuView的字体系列(在导航栏上),但没有发现任何设置此对象上的字体系列的内容。

此外,我想设置标题的字体系列,并且我制作了一个自定义渲染器,可以很好地工作。因此,我对ActionMenuView尝试了相同的操作,但是它没有任何字体/字体家族属性。

我的自定义渲染器(正在运行):

    private void Toolbar_ChildViewAdded(object sender, ChildViewAddedEventArgs e)
    {
        // here I can pass on the ActionMenuView object but it does not have any typeface property?
        if (e.Child.GetType() == typeof(Android.Support.V7.Widget.AppCompatTextView))
        {
            Android.Support.V7.Widget.AppCompatTextView AppCompatTextView = ((Android.Support.V7.Widget.AppCompatTextView)e.Child);
            AppCompatTextView.SetTypeface(Typeface.CreateFromAsset(Context.ApplicationContext.Assets, "MontserratRegular.otf"), TypefaceStyle.Normal);
            _toolbar.ChildViewAdded -= Toolbar_ChildViewAdded;
        }
    }

1 个答案:

答案 0 :(得分:0)

您可以尝试创建样式:

<style name="Style_font">
<item name="fontFamily">@fonts/PTSerif-Bold.ttf</item>
</style>

然后在菜单中使用此样式。

<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">

  

在MainActivity.cs中:

 Android.Support.V7.Widget.ActionMenuView bottombar =FindViewById<Android.Support.V7.Widget.ActionMenuView>(Resource.Id.toolbar_bottom);
        IMenu bottomMenu = bottombar.Menu;
        MenuInflater.Inflate(Resource.Drawable.menu_bottom_view_pager,bottomMenu);

我没有测试,但是您可以尝试