UIView скрывает текст панели навигации назад, как сделать ее видимой?

Я пытаюсь изменить фон на панели навигации на Gradient Red. Я добавил subview в панель навигации, которая устанавливает фон для Color, который я хочу. но затем кнопка "Навигационная панель" Текст невидим. Кнопка "Назад" видна, но текст не отображается.

UIView view = new UIView();
var gradient = new CAGradientLayer();
gradient.Frame = NavigationBar.Bounds;
gradient.NeedsDisplayOnBoundsChange = true;
gradient.MasksToBounds = true;
gradient.Colors = new CGColor[] { UIColor.FromRGB(248, 0, 0).CGColor, UIColor.FromRGB(143, 0, 0).CGColor };
view.Layer.InsertSublayer(gradient, 0);
UINavigationBar.Appearance.SetTitleTextAttributes(new UITextAttributes() { TextColor = UIColor.Clear });

var bounds = NavigationBar.Bounds;
this.NavigationBar.AddSubview(view);

Ответ 1

Я создал изображение из градиентного цвета и использовал это изображение в качестве фона для NavigationBar. Для iOS см. Ниже учебник.

UINavigationBar tintColor с градиентом

              UIGraphics.BeginImageContext(gradient.Bounds.Size);
                gradient.RenderInContext(UIGraphics.GetCurrentContext());
                UIImage backImage = Graphics.GetImageFromCurrentImageContext();
                UIGraphics.EndImageContext();      
                NavigationBar.BarStyle = UIBarStyle.Default;
  UINavigationBar.Appearance.SetBackgroundImage(backImage, UIBarMetrics.Default)

;