Voglio cambiare il colore in rosso.Come posso cambiare il colore del carattere di un oggetto UIBarButton?
risposta
Questa domanda è stata risolta here. Fondamentalmente, è necessario creare un UIButton, configurarlo come si desidera e quindi inizializzare l'elemento Button Bar con UIButton come visualizzazione personalizzata.
Ho trovato un modo più semplice per cambiare solo il colore del titolo: iOS7:
UIBarButtonItem *button =
[[UIBarButtonItem alloc] initWithTitle:@"Title"
style:UIBarButtonItemStyleBordered
target:nil
action:nil];
[button setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[UIColor redColor], NSForegroundColorAttributeName,nil]
forState:UIControlStateNormal];
e prima iOS7:
UIBarButtonItem *button =
[[UIBarButtonItem alloc] initWithTitle:@"Title"
style:UIBarButtonItemStyleBordered
target:nil
action:nil];
[button setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[UIColor redColor], UITextAttributeTextColor,nil]
forState:UIControlStateNormal];
Certamente una buona soluzione se si dispone di iOS 5.0 o versioni successive. OP: controlla UIBarItem.h per i dettagli. – gschandler
Ho cercato per anni per scoprire come cambiare il colore del testo, grazie mille !! Fortunatamente la maggior parte dei telefoni sono su IOS5 ora, quindi questa non è davvero una preoccupazione – AdamM
Ottima risposta, grazie! –
sulla nota simile da Guvvy Ava è possibile modificare la dimensione del carattere come
[buttonItem setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIFont fontWithName:@"Helvetica-Bold" size:26.0], UITextAttributeFont,nil] forState:UIControlStateNormal];
ci sono due modi per cambiare il colore del testo visualizzato UIBarButtonItem.
1)
[barButtonITem setTintColor:[UIColor redColor]];
2) oppure è possibile qualsiasi metodo di una classe UIColor. questo è solution.Althought realmente efficace per iOS 7 è possibile utilizzare NSForegroundColorAttributeName e può utilizzare
barButtonItem setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor clearColor],NSForegroundColorAttributeName, nil] forState:UIControlStateNormal];
Se si utilizza il sistema di navigazione voce pulsante della barra quindi di cambiare il colore della tinta pulsante utilizzare
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
Per cambiare il colore del testo del pulsante usa anche il seguente codice.
[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]} forState:UIControlStateNormal];
Aggiungere la seguente riga di codice che viewController si desidera cambiare il colore
possibile duplicato di [UIBarButtonItem con il colore?] (Http://stackoverflow.com/questions/664930/uibarbuttonitem-with- colore) – memmons