2012-06-21 16 views

Respuesta

29

Utilice NSDateFormatter para girar la cuerda en un NSDate. A continuación, utilice el formateador de fecha nuevamente para cambiar el NSDate a una cadena.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
dateFormatter.dateFormat = @"HH:mm"; 
NSDate *date = [dateFormatter dateFromString:@"15:15"]; 

dateFormatter.dateFormat = @"hh:mm a"; 
NSString *pmamDateString = [dateFormatter stringFromDate:date]; 

El código puede contener algunos errores, escritos sin compilar o probar.

+3

Solo asegúrese de establecer la configuración regional del formateador en en_US_POSIX antes de comenzar. –

+0

¿me puede decir cómo configurarlo? – python

+0

Gracias. Código de trabajo para mí NSDateFormatter * timeFormatter = [[NSDateFormatter alloc] init]; [timeFormatter setDateFormat: @ "HH: mm"]; timeFormatter.dateFormat = @ "hh: mm a"; txtTime.text = [timeFormatter stringFromDate: myTimePickerView.date]; –

-1
// Get your 24 hr time String format 
NSString *timeString = [NSString stringWithFormat:@"%@",[[[arr valueForKey:@"data"] valueForKey:@"pickup_time"] objectAtIndex:indexPath.row]]; 

//Store your 24 hr time String format into string 
     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
     [dateFormatter setDateFormat:@"HH:mm:ss"]; 
     NSDate *time = [dateFormatter dateFromString:timeString]; 

// Convert time object into desired format 
[dateFormatter setDateFormat:@"hh:mm.a"]; 
cell.lbl_BookingTm.text = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:time]]; //Get your string into 12 hr time String format 
+0

¿Por qué creas una nueva cadena cuando la asignas a la etiqueta? – rckoenes

2

@python

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]; 
[dateFormatter setLocale:locale]; 
[dateFormatter setDateFormat:@"hh:mm"]; 

Espero que esto ayude!

Cuestiones relacionadas