如何更改导航控制器后退按钮的字体大小

WBu*_*uck 0 uinavigationcontroller ios swift swift4

我试图更改导航控制器后退按钮的字体大小,但无济于事。

我目前正在以前的视图控制器中执行此操作viewWillAppear

 navigationController?.navigationBar.backItem?.backBarButtonItem?.setTitleTextAttributes(
    [NSAttributedStringKey.font : UIFont.systemFont(ofSize: 5)], for: .normal)
Run Code Online (Sandbox Code Playgroud)

上面的代码什么也没做。所以,有两个问题。

首先,更改后退按钮字体大小的正确方法是什么(顺便说一句,这似乎比应有的要困难得多)。

其次,是否有一个单一的地方(如 AppDelegate)我可以进行此更改,以便它影响所有视图控制器?

小智 5

您可以在 AppDelegate 中更改它:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    UIBarButtonItem.appearance().setTitleTextAttributes([NSAttributedStringKey.font: UIFont(name: "SF Pro Display", size: 17)!], for: .normal)

    return true
}
Run Code Online (Sandbox Code Playgroud)

您可以在其中自定义导航栏按钮的字体和大小,以便它在所有视图控制器中发生变化。