В моем приложении я передаю некоторые строки с контроллера вида на другой контроллер представления.NSString теряет свою ценность внутри контроллера вида
- View Controller A = MainViewController
- View Controller B = NuevoServicioViewController
Передача NString от А до Б
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
// Make sure your segue name in storyboard is the same as this line
if ([[segue identifier] isEqualToString:@"nuevo_servicio_segue"])
{
NSLog(@"estoy en segue pasando a nuevo servicio");
// Get reference to the destination view controller
NuevoServicioViewController *vc = [segue destinationViewController];
//pasamos la latitud del PO
//la convertimos a String
NSString *latitud = [NSString stringWithFormat:@"%.20f", self.puntoOrigen.latitude];
vc.parametro_origin_latitude = latitud;
//lo comprobamos
NSLog(@"LATITUD DEL PO PASADA=%@",latitud);
//pasamos la lONGITUD del PO
//la convertimos a String
NSString *longitud = [NSString stringWithFormat:@"%.20f", self.puntoOrigen.longitude];
vc.parametro_origin_longitude = longitud;
//lo comprobamos
NSLog(@"LONGITUD DEL PO PASADA=%@",longitud);
}
}
вид журнала, чтобы проверить, что строка является правильным :
2015-03-12 22:37:31.966 ABCTaxi[811:60b] LATITUD DEL PO PASADA=31.71179790294406686257
Сейчас в B, необходимо войти, чтобы проверить, что строка принимается: вид
//3. origin_latitude, la recibimos de mainview
NSLog(@"LATITUD RECIBIDA DE MAINVIEW=%@",self.parametro_origin_latitude);
Войдите, чтобы убедиться, что полученная строка совпадает со строкой:
[811:60b] LATITUD RECIBIDA DE MAINVIEW=31.71179790294406686257
И в конце B, действие действия кнопки перед дальнейшим процессом, еще один журнал, чтобы проверить правильность строки:
- (IBAction)boton_tomar_taxi_action:(id)sender {
//COMPROBAMOS QUE ESTAN TODOS LOS PARAMETROS
//PARAMETRO 1 CLIENT
NSLog(@"client = %@", self.parametro_client);
//PARAMETRO 2 ORIGIN
NSLog(@"origin = %@", self.parametro_origin);
//PARAMETRO 3 ORIGIN_LATITUDE
NSLog(@"origin_latitude = %@", self.parametro_origin_latitude);
//PARAMETRO 4 ORIGIN_LATITUDE
NSLog(@"origin_longitude = %@", self.parametro_origin_longitude);
//PARAMETRO 5. DATE
NSLog(@"date = %@", self.parametro_date);
}
И, наконец, строка нуль.
[811:60b] origin_latitude = (null)
Я не могу найти причину, по которой строка не совпадает с концом. Пожалуйста, помогите мне определить причину. Спасибо
Как вы объявляете parametro_origin_longitude недвижимость? – bsarrazin
@bensarz :, Я следую за строкой parameter_origin_latitude, объявленной в файле h как свойство (слабый, неатомный) NSString * parametro_origin_latitude; – user4619034