Eu tenho vários controladores de visualização e quero definir a cor da fonte de todos como vermelho.
[[UINavigationBar appearance] setFont:[UIFont boldSystemFontOfSize:12.0]];
está gerando um erro de seletor não reconhecido.
Como posso consertar isso?
ios5
uinavigationbar
uiappearance
carbonr
fonte
fonte
Respostas:
De Ray Wenderlich:
http://www.raywenderlich.com/4344/user-interface-customization-in-ios-5
Ou se preferir com o estilo literal do objeto:
Editar para iOS 7 e seguintes
UITextAttributes estão obsoletos como iOS 7, você pode usar o seguinte:
fonte
if ([navBarInstance respondsToSelector:@selector(appearance)])
primeiro porque ele irá travar as versões iOS abaixo de 5.UITextAttributeTextColor
foi suspenso em favor deNSForegroundColorAttributeName
no iOS 7Para destinos de implantação maiores ou iguais a iOS 6, você deve usar em seu
NSShadow
lugar:fonte
Fazendo isso no iOS 8+ e no Swift. Não há um
setTitleTextAttributes
objeto para aparência. Em vez disso, faça o seguinte:fonte
Fiz isso adicionando apenas algumas linhas de código na classe AppDelegate.m método didFinishLaunchingWithOptions: Use este código:
funciona para mim...
fonte
Se precisar fazer isso no Swift, você pode criar uma extensão para o UINavigationBar para permitir que você obtenha ou defina essas configurações.
Você pode então definir a cor e a fonte desta forma:
fonte
titleColor
outitleFont
individualmente. Se você usá-los juntos, oself.titleTextAttributes
será definido com um novo valor toda vez que uma das variáveis for chamada. O setter provavelmente poderia obter o outro valor ao criar o novo dicionário.Isso pode ser usado para definir uma visualização personalizada para uma única barra de navegação em vez de uma configuração global
fonte
Use esta linha de código
Acho que isso será útil para você.
fonte