so di poter personalizzare il testo UIBarButtonItem
viaPersonalizzazione colore tinta di UIBarButtonSystemItem con UIAppearance API
setTitleTextAttributes:forState:
V'è anche un modo per personalizzare UITabBar
icone tramite
setSelectedImageTintColor:
Esiste un modo per personalizzare il colore della tinta di un UIBarButtonSystemItem
, (ad esempio il colore dell'icona cestino), solo per avere un UX coerente? Non ho trovato nulla.
Se ciò non è possibile, come procederei? Devo salvare una versione modificata a colori dell'icona? Dove posso trovarlo? Quale sarebbe il modo più semplice per modificarlo?
EDIT
Per chiarire, non è il colore di sfondo del UIBarButtonItem
mi chiedo, ma il colore del contorno dell'icona.
EDIT
Impostazione del colore tinta della UIBarButtonItem
produce il colore del pulsante set sfondo.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
[[UINavigationBar appearance] setTintColor:[UIColor greenColor]];
UIBarButtonItem* trashButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemTrash target:nil action:nil];
trashButton.tintColor = [UIColor blackColor];
UIViewController* viewController = [[UIViewController alloc] init];
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:viewController];
[viewController.navigationItem setRightBarButtonItem:trashButton];
self.window.rootViewController = navController;
return YES;
}
rese this.
EDIT 2
Risulta che il colore contorno delle icone di sistema infatti può essere impostato tramite tintColor
proprietà di UIBarButtonItem
, ma solo se la sua proprietà style
ha il valore UIBarButtonItemStylePlain
. (Anche in questo caso, alcuni colori sono speciali e lasciano il contorno bianco. Uno di questi colori è [UIColor blackColor]
) Tuttavia, utilizzando UIBarButtonItem
in un UINavigationBar
il style
è obbligato a essere UIBarButtonItemStyleBordered
. In questo caso, tintColor
imposta il colore di sfondo del pulsante e lascia il contorno bianco.
Come sto usando il UIBarButtonItem
s in una barra di spostamento, il mio problema rimane ancora irrisolto.
Grazie mille per questa risposta utile! Questo sembra davvero il modo più semplice per farlo. – Thermometer
Peccato che non sia possibile impostare la larghezza di UIBarButtonItem in una UINavigationBar :(Ora il pulsante non assomiglia all'elemento System. – Thermometer