Estoy tratando de detectar si un NSNumber está entre 0 y 255 o no. Cada vez que ejecuto la aplicación, recibo la vista de alerta de que mi número es mayor que 255, incluso cuando no lo es. No tengo este problema con 0.Detectando si NSNumber está entre 0 y 255
if (redValue < 0) {
NSLog(@"Red value is less than 0");
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Your number must be greater than 0." message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
} else if (redValue > 255) {
NSLog(@"Red value is greater than 255");
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Your number must be less than 255." message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}
Además, yo recibir este aviso en el "else if (RedValue> 255)" línea: comparación ordenada entre puntas y entero ('NSNumber *' y 'int '), ¿entonces supongo que tengo que convertir este NSNumber en un número entero?
Ver esta cuestión para más información sobre la conversión de NSNumber a int: http://stackoverflow.com/questions/3555906/how-to-convert-nsnumber-to-int-in- objetivo-c –