在Xamarin(Ios)中设置导航标题颜色

时间:2016-09-22 05:58:07

标签: c# ios xamarin.ios uinavigationbar

我希望使用C#在Xamarin(Ios)中设置导航栏标题颜色。

我设置如下但不起作用。

this.NavigationController.NavigationBar.BarTintColor = UIColor.Clear.FromHexString("#0072BA", 1.0f);
this.NavigationController.NavigationBar.TitleTextAttributes = UIColor.Magenta;

BarTintColor工作但TitleTextAttributes不起作用..我也看到了文档,但在文档中没有提及标题文字颜色。

任何帮助都要得到赞赏..

2 个答案:

答案 0 :(得分:1)

花了1个小时后我得到了解决方案。

类型UIKit.UINavigationBar不包含SetTitleTextAttributes的定义,也找不到类型SetTitleTextAttributes的扩展方法UIKit.UINavigationBar。它给出了以下错误:

  

您是否缺少装配参考?

所以不要打电话给SetTitleTextAttributes,而是执行以下操作:

this.NavigationController.NavigationBar.TitleTextAttributes = new UIStringAttributes()
        {
            ForegroundColor = UIColor.White
        };

希望这会对其他人有所帮助。

答案 1 :(得分:0)

您可以使用自定义视图作为导航栏的标题视图,然后您可以轻松修改它。

在你的" ViewDidLoad"方法,使用此代码:

public override void ViewDidLoad()
        {
            //Normal way
            //this.Title = "Normal";//or this.NavigationItem.Title = "Normal;
            //Using custom view
            UILabel lbTitle = new UILabel(new CoreGraphics.CGRect(0, 0, 50, 30));
            lbTitle.Text = "CustomView";
            lbTitle.TextColor = UIColor.Red;
            lbTitle.Font = UIFont.SystemFontOfSize(15);
            this.NavigationItem.TitleView = lbTitle;
            //Using a picture
            //this.NavigationItem.TitleView = new UIImageView();
        }

希望它可以帮到你。