protected override void OnElementChanged(ElementChangedEventArgs <TabbedPage> e) { base.OnElementChanged(e); try { element = Element as CurvedBottomTabbedPage; var metrics = Resources.DisplayMetrics; var width = metrics.WidthPixels; var height = metrics.HeightPixels; if (!(GetChildAt(0) is ViewGroup layout)) { return; } if (!(layout.GetChildAt(1) is BottomNavigationView bottomNavigationView)) { return; } bottomNavigationView.RemoveFromParent(); bottomNavigationView.RemoveAllViews(); bottomNavigationView.RemoveAllViewsInLayout(); var bottomView = LayoutInflater.From(Context).Inflate(Resource.Layout.BottomNavBar, null); bottombar = bottomView.FindViewById <CurvedBottomNavigationView>(Resource.Id.bottom_nav_bar); bottombar.RemoveFromParent(); actionbutton = bottomView.FindViewById <FloatingActionButton>(Resource.Id.fab); actionbutton.RemoveFromParent(); SetTabItems(); SettingUpMenu(); OnChildrenCollectionChanged(null, new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset)); SetFabProperties(); actionbutton.Click += Actionbutton_Click; bottombar.LabelVisibilityMode = LabelVisibilityMode.LabelVisibilityLabeled; layout.AddView(actionbutton); layout.AddView(bottombar); bottombar.SetZ(0); UpdateBarBackgroundColor(); UpdateBarTextColor(); UpdateItemIconColor(); } catch (Exception ex) { throw new Exception(ex.Message); } }