Tengo una aplicación en la tienda de aplicaciones en la que estoy usando análisis de Flurry. Y sigo recibiendo un error de excepción no controlada de vez en cuando que no puedo descifrar.Selector no reconocido enviado en UIBarButtonItem setTintColor
NSInvalidArgumentException: - [UIBarButtonItem setTintColor:]: Selector no reconocido enviado a la instancia 0x177b20 de error: La aplicación se estrelló
Lo que no puedo entender es que soy no establecer ningún artículo en su botón de la barra colorear el tinte en cualquier lugar. Tengo algunas vistas personalizadas en las que estoy configurando el elemento del botón de la barra derecha, pero no el tinte.
La mayoría de mis usos del botón se ven así.
- (void)viewDidLoad
{
[super viewDidLoad];
UINavigationBar *bar = [self.navigationController navigationBar];
[bar setTintColor:[UIColor colorWithRed:0 green:69.0/255 blue:118.0/255 alpha:1]];
self.navigationItem.title = @"Edit User";
UIBarButtonItem *saveButton = [[UIBarButtonItem alloc]
initWithTitle:@"Save"
style:UIBarButtonItemStylePlain
target:self
action:@selector(editUser:)];
self.navigationItem.rightBarButtonItem = saveButton;
[saveButton release];
UIBarButtonItem *cancelButton = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemCancel
target:self
action:@selector(cancel)];
[[self navigationItem] setLeftBarButtonItem:cancelButton];
[cancelButton release];
}
Si alguien tiene alguna idea sobre este tema, estaría muy agradecido. Me estoy enfocando en iOS 4.0 y en mi proyecto.
ACTUALIZACIÓN: me di cuenta de lo que estaba causando algunos de los temas al azar en el setTintColor. Descubrí que estaba configurando el color del tinte en uno de los elementos reales del botón de la barra. Supongo que hay algunas diferencias entre las versiones del sistema operativo que pueden causar bloqueos. Entonces, si alguien puede decirme una forma neutral del sistema operativo de configurar un elemento de botón de barra derecha personalizado en mi barra de navegación, sería de agradecer.
He tenido algunos problemas con el recientemente. A veces, solo tiene que llamar a setTintColor en las subvistas de NavigationController. ([[[auto.navigationController.navigationBar subviews] objectAtIndex: 1] setTintColor: [UIColor redColor]];) Al menos eso lo solucionó para mí. – CodaFi