2012-01-09 63 views
0

我帶了一個baseViewController與一個UIDatePicker.I在其他viewControllers中使用這個日期選擇器。當我試圖得到一個date.always以前的日期顯示在log.this正在發生在每個視圖控制器。在使用日期選取器時得到錯誤的日期

獲取日期選擇器。

self.datePicker = [[[UIDatePicker alloc] init] autorelease]; 
self.datePicker.datePickerMode = UIDatePickerModeDate; 
[self.datePicker addTarget:self action:@selector(dateValueChanged:) forControlEvents:UIControlEventValueChanged]; 
[self.datePicker resignFirstResponder]; 

使用日期選取器從文本字段中取值。

- (IBAction)dateValueChanged:(id)sender 
{ 
UIDatePicker *picker = (UIDatePicker *)sender; 
dateSelected = [picker date]; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"dd-MM-yyyy"]; 
if (self.field.tag == 101) 
    self.field.text = [dateFormatter stringFromDate:dateSelected]; 
NSLog(@"%@",dateSelected); 
} 
+0

請給第二個方法添加一個斷點,然後檢查'dateSelected'的值。你在使用ARC嗎?這兩種方法都在asme類中嗎? – jrturton 2012-01-10 08:30:55

+0

即使在日誌中我得到的是以前的日期......並且是這兩種方法都在同一個類中 – Sekhar 2012-01-10 10:54:51

+0

看起來像是日期選擇器的問題。日期值更改方法返回上一個日期。 – Sekhar 2012-01-10 10:59:23

回答

1

看起來好像您正在編輯實體的值,但您沒有堅持它。試着在你save方法的末尾添加像下面這樣:

NSError* error = nil; 
[appDelegate.managedObjectContext save:&error]; 
+0

@Sekhar它不是真的關於運氣......你得到一個在'error'變量中返回的值嗎? – 2012-01-09 12:02:37

+0

ya其返回空值 – Sekhar 2012-01-09 12:14:07

+0

這裏沒有更多的工作要做。你將不得不更好地解釋你所嘗試的。 – 2012-01-09 13:02:43

0

作爲測試,嘗試擺脫自動釋放的,看看你的行爲的變化。

+0

不,它不工作。 – Sekhar 2012-01-11 06:16:10