Cómo cambiar el color de fuente / Color de text del UIBarButtonItem en la barra de navigation

Agrego un button de barra a la barra de navigation programáticamente de la siguiente manera

UIBarButtonItem *cancel = [[UIBarButtonItem alloc] initWithTitle:@"CANCEL" style:UIBarButtonItemStyleBordenetworking target:self action:@selector(goToPreviousView)]; self.navigationItem.leftBarButtonItem = cancel; 

Ahora quiero mostrar el text "CANCELAR" en color ROJO .

Quiero decir que necesito cambiar el text en los elementos del button de barra , pero no el color de tinte del button.

¿Como hacer eso?

Otro método es:

 UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; [button setBackgroundImage:[UIImage imageNamed:@"delete.png"] forState:UIControlStateNormal]; [button setTitle:@"Delete" forState:UIControlStateNormal]; button.titleLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:12.0f]; [button.layer setCornerRadius:4.0f]; [button.layer setMasksToBounds:YES]; [button.layer setBorderWidth:1.0f]; [button.layer setBorderColor: [[UIColor grayColor] CGColor]]; button.frame=CGRectMake(0.0, 100.0, 60.0, 30.0); [button addTarget:self action:@selector(batchDelete) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem* deleteItem = [[UIBarButtonItem alloc] initWithCustomView:button]; 

Mira esto :-

  UIBarButtonItem *cancel = [[UIBarButtonItem alloc] initWithTitle:@"Title" style:UIBarButtonItemStyleBordenetworking target:nil action:nil]; [cancel setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIColor networkingColor], UITextAttributeTextColor,nil] forState:UIControlStateNormal]; 

Solo una actualización de iOS7 con la syntax Modern Obj-C:

 [barButtonItem setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor networkingColor]} forState:UIControlStateNormal]; 
 UITextAttributeTextColor //Is deprecated on iOS 7. 

Este código se usa para cambiar el color del text desde el proxy de apariencia.

 [[UIBarButtonItem appearance] setTintColor:[UIColor networkingColor]]; 

este código se usa para cambiar el color del text de UIBarButtonItem en la barra de navigation:

 UILabel *lblTotCaratteri = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, 25)]; lblTotCaratteri.textAlignment = UITextAlignmentCenter; lblTotCaratteri.font = [UIFont italicSystemFontOfSize:13.0]; lblTotCaratteri.textColor = [UIColor networkingColor]; lblTotCaratteri.backgroundColor = [UIColor clearColor]; lblTotCaratteri.adjustsFontSizeToFitWidth = YES; lblTotCaratteri.text = @"Cancel"; UIBarButtonItem *lblCaratteri = [[UIBarButtonItem alloc] initWithCustomView: lblTotCaratteri]; self.navigationItem.rightBarButtonItem = lblCaratteri; 

Vieja pregunta, aquí está la solución rápida 2.2:

  let cancel = UIBarButtonItem(title: "CANCEL", style: .Bordenetworking, target: self, action: #selector(goToPreviousView)) cancel.setTitleTextAttributes([NSForegroundColorAttributeName: UIColor.networkingColor()], forState: .Normal) self.navigationItem.leftBarButtonItem = cancel 

UITextAttributeTextColor // está en desuso en iOS 7.

Establezca el color de BarButtonItem de una manera como esta

  [_barButtonItem setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys: [UIColor colorWithRed:250/255.0 green:240/255.0 blue:230/255.0 alpha:1.0], NSForegroundColorAttributeName,nil] forState:UIControlStateNormal]; 

Lo principal que todos deben hacer si no es su proyecto y solo necesita agregar algunos cambios, es el control

 [UIBarButtonItem appearance] 

Perdí mucho time para darme count de que alguien configuró el aspecto incorrecto de UIBarButtonItem