protected override void OnAttached() { if (Container != null && Element != null) { _tabbedPage = (CoreTabbedPage)Element; _renderer = (TabbedPageRenderer)this.Container; UpdateVisiblity(); } }
protected override void OnAttached() { if (Container != null && Element != null) { _tabbedPage = (CoreTabbedPage)Element; foreach (var view in this.Container.Subviews) { if (view is UITabBar) { _tabBar = (UITabBar)view; break; } } UpdateVisiblity(); } }
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) { base.OnElementPropertyChanged(sender, e); if (setup) { return; } if (e.PropertyName == "Renderer") { tabbedPage = (CoreTabbedPage)Element; if (!tabbedPage.IsToolbarBottom) { //var groupName = ViewGroup.GetChildAt(0).GetType().Name; layout = (TabLayout)ViewGroup.GetChildAt(1); setup = true; ColorStateList colors = CreateColorState(); layout?.SetTabTextColors(tabbedPage.UnSelectedForegroundColor.ToAndroid(), tabbedPage.SelectedForegroundColor.ToAndroid()); if (tabbedPage.TabBackgroundColor != Color.Default) { layout?.SetBackgroundColor(tabbedPage.TabBackgroundColor.ToAndroid()); } if (layout != null) { for (int i = 0; i < layout.TabCount; i++) { var tab = layout.GetTabAt(i); var icon = tab.Icon; if (icon != null) { icon = DrawableCompat.Wrap(icon); DrawableCompat.SetTintList(icon, colors); } } } } } }
public override void ViewWillAppear(bool animated) { if (TabBar?.Items == null) { return; } tabbedPage = (CoreTabbedPage)Element; var selectedColor = tabbedPage.SelectedForegroundColor.ToUIColor(); var unselectedColor = tabbedPage.UnSelectedForegroundColor.ToUIColor(); TabBar.BackgroundImage = new UIImage(); TabBar.BackgroundColor = tabbedPage.TabBackgroundColor.ToUIColor(); TabBar.SelectedImageTintColor = selectedColor; TabBar.UnselectedItemTintColor = unselectedColor; for (int i = 0; i < TabBar.Items.Length; i++) { UpdateItem(TabBar.Items[i], selectedColor, unselectedColor); } base.ViewWillAppear(animated); }