texto tamaño poner para notas mover mac lugar letras letra las como color cambiar bloc ios swift fonts uinavigationcontroller uinavigationbar

ios - tamaño - Cómo cambiar la fuente y el color del texto del título de UINavigationBar



como poner texto en imovie para mac (5)

Quiero cambiar la fuente del título a Avenir, y quiero que sea blanco. Aquí está mi código en el método viewDidLoad :

UINavigationBar.appearance().titleTextAttributes = [NSFontAttributeName: UIFont(name: "Avenir", size: 20)!] UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()]

Este código solo cambia el color del título, no la fuente. Además, traté de implementar esto en el archivo de delegado de aplicaciones, pero eso no funcionó.

Aquí es cómo se ve mi UINavigationBar:

Quiero que el título tenga también una fuente de Avenir. ¿Cómo logro esto?


En caso de que alguien necesite esto en Swift 4 :

let navBarAppearance = UINavigationBar.appearance() navBarAppearance.barTintColor = .red navBarAppearance.tintColor = .white navBarAppearance.titleTextAttributes = [ NSAttributedString.Key.foregroundColor: UIColor.white, NSAttributedString.Key.font: UIFont(name: "Avenir", size: 20)!]


Me gustaría crear una salida y hacer esto:

@IBOutlet weak var navigationBar: UINavigationBar! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "Avenir", size: 30)!] }


Si desea que los estilos se apliquen en toda la aplicación, agregue estas líneas en el archivo AppDelegate.m.

NSShadow* shadow = [NSShadow new]; shadow.shadowOffset = CGSizeMake(0.0f, 0.0f); shadow.shadowColor = [UIColor blackColor]; [[UINavigationBar appearance] setTitleTextAttributes: @{ NSForegroundColorAttributeName: [UIColor whiteColor], NSFontAttributeName: [UIFont fontWithName:@"Kelvetica Nobis" size:20.0f], NSShadowAttributeName: shadow }];

NSForegroundColorAttributeName establece el color de fuente.

NSFontAttributeName establece una cara de fuente personalizada para el texto del título.

NSShadowAttributeName aplica un bonito efecto de sombra al texto, puede eliminar esta parte si lo desea.

También de antemano, puede agregar estas líneas para ocultar el texto que aparece en el botón Atrás en la barra de acción cuando navega a otra vista dentro del controlador de navegación.

[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(-1000, -1000) forBarMetrics:UIBarMetricsDefault];

Espero que esto ayude a su pregunta :)


Su código está bien, solo necesita configurar todos los titleTextAttributes de titleTextAttributes de titleTextAttributes en una línea:

UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor.white , NSFontAttributeName: UIFont(name: "Avenir", size: 17)!]


Yo uso esto:

Actualización, parece que esto es necesario también:

self.navigationController?.navigationBar.barStyle = UIBarStyle.Black // I then set the color using: self.navigationController?.navigationBar.barTintColor = UIColor(red: 204/255, green: 47/255, blue: 40/255, alpha: 1.0) // a lovely red self.navigationController?.navigationBar.tintColor = UIColor.whiteColor() // for titles, buttons, etc. let navigationTitleFont = UIFont(name: "Avenir", size: 20)! self.navigationController?.navigationBar.titleTextAttributes = [NSFontAttributeName: navigationTitleFont]