更改导航控制器中编辑按钮的字体

Posted

技术标签:

【中文标题】更改导航控制器中编辑按钮的字体【英文标题】:Change font for Edit button in navigation controller 【发布时间】:2015-02-11 02:50:11 【问题描述】:

在导航控制器的左侧,我有一个通过情节提要移入的按钮。我当然没有配置那个问题,但我想使用你从取消注释中得到的编辑按钮:

self.navigationItem.rightBarButtonItem = self.editButtonItem()

但是如何自定义此按钮上的字体名称、大小和颜色?

这是我环顾四周后尝试的:

let attributes = [NSFontAttributeName:UIFont(name: "HelveticaNeue-Thin", size: 19)!]
let fontColor = [NSStrokeColorAttributeName:UIColor.whiteColor()]
self.navigationItem.rightBarButtonItem = self.editButtonItem()
self.navigationItem.rightBarButtonItem?.setTitleTextAttributes(attributes, forState: .Normal)
self.navigationItem.rightBarButtonItem?.setTitleTextAttributes(fontColor, forState: .Normal)

这些属性都不起作用。有没有:

另一种自定义编辑按钮的方法,您可以从 viewDidLoad 行(因为无法从 Storyboard 中获得)或 有没有办法重现编辑按钮在代码中的作用,以便我可以在 Storyboard 中对其进行自定义?

感谢您的帮助。

【问题讨论】:

【参考方案1】:

有一种方法可以自定义从 viewDidLoad 行获得的编辑按钮。你很接近,我只是将属性组合在一起并使用NSForegroundColorAttributeName而不是NSStrokeColorAttributeName

let attributes = [NSFontAttributeName:UIFont(name: "HelveticaNeue-Thin", size: 19)!, NSForegroundColorAttributeName:UIColor.whiteColor()]
self.editButtonItem().setTitleTextAttributes(attributes, forState: .Normal)
self.navigationItem.rightBarButtonItem = self.editButtonItem()

【讨论】:

以上是关于更改导航控制器中编辑按钮的字体的主要内容,如果未能解决你的问题,请参考以下文章

尝试更改邮件撰写导航栏文本颜色

导航控制器上的编辑按钮

更改导航栏标题字体 - swift

UIPageViewController 更改导航栏后退按钮标题

如何在可能的导航控制器中更改条形按钮项的垂直位置和大小?

编辑时如何用导航控制器中的另一个 UIBarButtonItem 替换后退按钮?