public static void UpdateBackButton(this AToolbar nativeToolbar, Toolbar toolbar) { _defaultNavigationIcon ??= nativeToolbar.NavigationIcon; if (toolbar.BackButtonVisible) { nativeToolbar.NavigationIcon ??= _defaultNavigationIcon; var backButtonTitle = toolbar.BackButtonTitle; ImageSource image = toolbar.TitleIcon; if (!string.IsNullOrEmpty(backButtonTitle)) { nativeToolbar.NavigationContentDescription = backButtonTitle; } else if (image == null || nativeToolbar.SetNavigationContentDescription(image) == null) { nativeToolbar.SetNavigationContentDescription(Resource.String.nav_app_bar_navigate_up_description); } } else { if (!toolbar.DrawerToggleVisible) { nativeToolbar.NavigationIcon = null; } } nativeToolbar.UpdateIconColor(toolbar); nativeToolbar.UpdateBarTextColor(toolbar); }
public static void UpdateBackButton(this AToolbar nativeToolbar, Toolbar toolbar) { if (toolbar.BackButtonVisible) { var context = nativeToolbar.Context?.GetThemedContext() ?? nativeToolbar.Context ?? toolbar.Handler?.MauiContext?.Context; nativeToolbar.NavigationIcon ??= new DrawerArrowDrawable(context !) { Progress = 1 }; var backButtonTitle = toolbar.BackButtonTitle; ImageSource image = toolbar.TitleIcon; if (!string.IsNullOrEmpty(backButtonTitle)) { nativeToolbar.NavigationContentDescription = backButtonTitle; } else if (image == null || nativeToolbar.SetNavigationContentDescription(image) == null) { nativeToolbar.SetNavigationContentDescription(Resource.String.nav_app_bar_navigate_up_description); } } else { if (!toolbar.DrawerToggleVisible) { nativeToolbar.NavigationIcon = null; } else { nativeToolbar.SetNavigationContentDescription(Resource.String.nav_app_bar_open_drawer_description); } } nativeToolbar.UpdateIconColor(toolbar); nativeToolbar.UpdateBarTextColor(toolbar); }