Tengo varios controladores de vista y quiero establecer el color de fuente de todos en rojo.
[[UINavigationBar appearance] setFont:[UIFont boldSystemFontOfSize:12.0]];
arroja un error de selector no reconocido.
¿Cómo puedo arreglar esto?
ios5
uinavigationbar
uiappearance
carbonatador
fuente
fuente
Respuestas:
De Ray Wenderlich:
http://www.raywenderlich.com/4344/user-interface-customization-in-ios-5
O si lo prefiere con el estilo literal del objeto:
Editar para iOS 7 y siguientes
UITextAttributes está obsoleto como iOS 7, puede usar lo siguiente:
fuente
if ([navBarInstance respondsToSelector:@selector(appearance)])
primero porque bloqueará las versiones de iOS por debajo de 5.UITextAttributeTextColor
está en desuso en favor deNSForegroundColorAttributeName
iOS 7Para los destinos de implementación mayores o iguales que iOS 6, debe usar
NSShadow
en su lugar:fuente
Haciendo esto en iOS 8+ y en Swift. No hay un
setTitleTextAttributes
objeto de apariencia. En su lugar, haz esto:fuente
Hice esto agregando solo algunas líneas de código en la clase AppDelegate.m método didFinishLaunchingWithOptions: Use este código:
esto funciona para mi...
fuente
Si necesita hacer esto en Swift, puede crear una extensión para UINavigationBar que le permita obtener o establecer estas configuraciones.
Luego puede establecer el color y la fuente de esta manera:
fuente
titleColor
otitleFont
individualmente. Si las usa juntas,self.titleTextAttributes
se establecerá en un nuevo valor cada vez que se llame a una de las variables. El establecedor probablemente podría obtener el otro valor cuando crea el nuevo diccionario.Esto podría usarse para establecer una vista personalizada en una barra de navegación única en lugar de una configuración global
fuente
Usa esta línea de código
Creo que esto te será de ayuda.
fuente