如何在Swift中更改navigationBar字体?

b3r*_*rge 35 uinavigationbar navigationbar swift

如何在Swift中更改NavigationBar字体?

这是我到目前为止所尝试的,但收到错误(我已经正确地将CaviarDreams实现到项目中):

self.navigationController.navigationBar.titleTextAttributes = NSFontAttributeName[UIFont .fontWithName(CaviarDreams.ttf, size: 20)]
Run Code Online (Sandbox Code Playgroud)

错误说: Use of unresolved identifier 'CaviarDreams

对不起,如果问题非常糟糕.

Jim*_*m T 97

试试这个:

self.navigationController.navigationBar.titleTextAttributes = [ NSFontAttributeName: UIFont(name: "CaviarDreams", size: 20)!]
Run Code Online (Sandbox Code Playgroud)

编辑:现在,必须解开UIFont才能在这里使用.

  • 注意:`NSFontAttributeName`现在是`String`类型,所以这段代码不起作用. (3认同)

Tim*_*m S 42

使用Swift,我将其添加到AppDelegate.swift

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        // Override point for customization after application launch.

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

        return true
    }
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你!

  • `NSFontAttributeName`现在改为--- >> NSAttributedStringKey.font` (2认同)

A.G*_*A.G 12

Swift 2.0:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        UINavigationBar.appearance().titleTextAttributes = [
            NSFontAttributeName: UIFont(name: "Arial-Regular", size: 30)!
        ]

        return true
    }
Run Code Online (Sandbox Code Playgroud)

要么

 override func viewDidLoad() {
  super.viewDidLoad()

  self.navigationController?.navigationBarHidden =  false
  self.title = "SAMPLE"

//Set Color
  let attributes: AnyObject = [ NSForegroundColorAttributeName: UIColor.redColor()]
  self.navigationController!.navigationBar.titleTextAttributes = attributes as? [String : AnyObject]


//Set Font Size
  self.navigationController!.navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "Arial", size: 37.0)!];

 }
Run Code Online (Sandbox Code Playgroud)


ben*_*esh 10

现在你必须首先打开它(!)它所以它不是类型UIFont?:

self.navigationController.navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "<font-name>", size: <size>)!]
Run Code Online (Sandbox Code Playgroud)