ios – 使用Swift从AppDelegate更改UINavigationBar后退按钮文本和字体

前端之家收集整理的这篇文章主要介绍了ios – 使用Swift从AppDelegate更改UINavigationBar后退按钮文本和字体前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要从AppDelegate更改UINavigationBar后退栏按钮文本,以将更改应用到我的应用程序中的所有视图.

我使用以下方法更改了标题字体样式:

UINavigationBar.appearance().titleTextAttributes = [
            NSFontAttributeName: UIFont(name: "MyCustomFont",size: 20)!
]

但我不知道如何访问左侧栏按钮对其进行更改.

解决方法

斯威夫特3.0,4.0

只需通过UINavigationItem的扩展即可实现它.根据许多搜索,无法使用app delegate更改左按钮文本.

extension UINavigationItem{

    override open func awakeFromNib() {
        super.awakeFromNib()

        let backItem = UIBarButtonItem()
        backItem.title = "Hello"


        if let font = UIFont(name: "Copperplate-Light",size: 32){
            backItem.setTitleTextAttributes([NSFontAttributeName:font],for: .normal)
        }else{

            print("Font Not available")
        }
        /*Changing color*/
        backItem.setTitleTextAttributes([NSForegroundColorAttributeName: UIColor.green],for: .normal)

        self.backBarButtonItem = backItem
    }

}

更新:

您可以在didFinishLaunchingWithOptions上更改AppDelegate的后退按钮箭头颜色,

/*It will change back arrow color only if you use  backItem.setTitleTextAttributes,else it will change whole text color*/
 UINavigationBar.appearance().tintColor = UIColor.orange

猜你在找的iOS相关文章