我帶了一個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);
}
請給第二個方法添加一個斷點,然後檢查'dateSelected'的值。你在使用ARC嗎?這兩種方法都在asme類中嗎? – jrturton 2012-01-10 08:30:55
即使在日誌中我得到的是以前的日期......並且是這兩種方法都在同一個類中 – Sekhar 2012-01-10 10:54:51
看起來像是日期選擇器的問題。日期值更改方法返回上一個日期。 – Sekhar 2012-01-10 10:59:23