2011-01-03 9 views
7

ho provato varie cose, tra cui:Come posso impostare la data di UIDatePicker in un'altra data?

[timepicker setDate: [NSDate mondayalarmtime]]; 

e

timepicker.date = mondayalarmtime; 

Ogni volta, questa linea si blocca il simulatore. Il mio mondayalarmtime è definita in viewDidLoad qui:

NSDateFormatter *inputFormat = [[NSDateFormatter alloc] init]; 
[inputFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 
NSDate *inputDate = [inputFormat dateFromString: @"2011-01-01 09:00:00"]; 

NSLog (@"The input date %@", inputDate); 

NSDate *mondayalarmtime = inputDate; 

Il NSLog ritorna:

The input date 2011-01-01 09:00:00 +0000 

Mettere un NSLog chiedere mondayalarmtime appena prima che tenta di impostare thet imepicker al mondayalarmtime restituisce lo stesso ..

Mondays alarm time.. 2011-01-01 09:00:35 +0000 

E quindi quando tenta di impostare la data del timepicker su mondayalarmtime, si blocca con il report:

Program received signal: “EXC_BAD_ACCESS”. 
+1

suona come un classico problema di cattiva gestione della memoria prova. Abbiamo bisogno di vedere più codice. –

+0

1) Stai usando ARC, 2) Perché stai dichiarando localmente mondayalarmtime nel tuo viewDidLoad se è un ivar, 3) La differenza di 35 secondi nei tuoi registri è un refuso o ciò che vedi effettivamente? – jrturton

+0

Scusa, mi sono confuso per le date (che ironia) ho pensato che fosse una nuova domanda! Malattia di gennaio – jrturton

risposta

6

Si sta inviando il messaggio di lunedialarmtime a NSDate. NSDate non capisce questo messaggio

impostare una proprietà con mondayalarmtime e chiamando il getter

[timepicker setDate:[self mondayalarmtime]]; 
Problemi correlati