2012-03-08 6 views
14

Estoy tratando de tomar avalue de un UIPicker que está lleno de números redondos, enteros extraídos de y NSMutableArray. Estoy tratando de convertir los valores extraídos a un int real.Xcode iOS: Convertir int en NSString

yo probamos este en el .m:

int pickednumber; 


...... 

-(void) pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ 


NSString *numbers = [arrayNumbers objectAtIndex:[pickerView selectedRowInComponent:0]]; 

pickednumber = [NSString stringWithFormat:@"%d", numbers]; 

NSLog(@"Picked number %@ ", numbers); 

} 

me sale el error en el pickednumber = línea: Incompatible puntero a entero conversión asignar a 'int' de 'id'. ¿Qué estoy haciendo mal?

mensaje fue editado por Sounddesigner el 03/08/12 a las 3:05 pm

+7

pregunta y título de igualar. – newenglander

+0

En estos días es que ... 'NSString * str = [@ (número)]; stringValue' es así de simple http://stackoverflow.com/a/21258535/294884 – Fattie

Respuesta

96

NSString tiene un confort método para obtener valor entero de un texto

hacer esto

pickednumber = [numbers intValue]; 

NSLog(@"Picked number %d ", numbers); // not %@ ..%@ is for objects .. not int 
3

Convertir entero en NSString:

NSString *string = [NSString stringWithFormat:@"%i",integerNumber]; 

Convertir NSString a int: no parecen

int number = [string integerValue];