UIView隐藏导航栏后退按钮文本如何使其可见?

时间:2015-06-08 05:08:38

标签: swift ios7 xamarin.forms

我正在尝试将导航栏背景更改为Gradient Red。 我已将子视图添加到导航栏,将背景设置为我想要的颜色。 但随后导航栏后退按钮文本是不可见的。 后退按钮可见,但文本不可见。

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 个答案:

答案 0 :(得分:1)

我用渐变色创建了图像,并将该图像用作NavigationBar的背景。对于iOS,请参阅下面的教程。

UINavigationBar tintColor with gradient

           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);