protected virtual Task <bool> ShowBottomNavigationFragment(
            Type view,
            MvxBottomNavigationViewPresentationAttribute attribute,
            MvxViewModelRequest request)
        {
            var bottomNavigationView = FindMvxBottomNavigationViewInFragmentPresentation(attribute);

            if (bottomNavigationView == null)
            {
                throw new Exception("MvxBottomNavigationView not found");
            }
            SpannableString spannableString = new SpannableString(attribute.Title);

            spannableString.SetSpan(new CustomTypeFaceSpan("",
                                                           FontUtils.GetNormalFont(bottomNavigationView.Context),
                                                           color: Android.Graphics.Color.ParseColor("#888888")),
                                    0,
                                    spannableString.Length(), SpanTypes.InclusiveInclusive);
            var menuItem = bottomNavigationView.Menu.Add(spannableString);

            if (attribute.DrawableItemId != int.MinValue)
            {
                menuItem.SetIcon(attribute.DrawableItemId);
            }
            bottomNavigationView.AddItem(menuItem, request.ViewModelType, attribute.UniCode);
            return(Task.FromResult(true));
        }
        private MvxBottomNavigationView FindMvxBottomNavigationViewInFragmentPresentation(MvxBottomNavigationViewPresentationAttribute pagerFragmentAttribute)
        {
            MvxBottomNavigationView bottomNavigationView = null;

            // check for a ViewPager inside a Fragment
            if (pagerFragmentAttribute.FragmentHostViewType != null)
            {
                var fragment = GetFragmentByViewType(pagerFragmentAttribute.FragmentHostViewType);
                bottomNavigationView = fragment.View.FindViewById <MvxBottomNavigationView>(pagerFragmentAttribute.BottomNavigationResourceId);
            }

            // check for a ViewPager inside an Activity
            if (bottomNavigationView == null && pagerFragmentAttribute.ActivityHostViewModelType != null)
            {
                bottomNavigationView = CurrentActivity.FindViewById <MvxBottomNavigationView>(pagerFragmentAttribute.BottomNavigationResourceId);
            }

            return(bottomNavigationView);
        }