我有一个问题我在'View did Load'中使用此代码而DateText是文本字段的UIOutlet
[datePicker setDate:[NSDate date]];
[datePicker addTarget:self action:@selector(updateTextField:) forControlEvents:UIControlEventAllTouchEvents];
[self.DateText setInputView:datePicker];
[datePicker addTarget:self action:@selector(updateTextField:) forControlEvents:UIControlEventValueChanged];
和
-(void)updateTextField:(id)sender
{
UIDatePicker *picker = (UIDatePicker*)self.DateText.inputView;
self.DateText.text = [NSString stringWithFormat:@"%@",picker.date];
}
我在TextField(DepartureDateText)进入的Ouptut是
2013-06-13 07:38:22 +0000
任何人都可以建议我如何摆脱+0000以及+0000指示的内容。
答案 0 :(得分:4)
您应该使用NSDateFormatter
将NSDate
更改为本地日期时间表示:
-(void)updateTextField:(id)sender {
UIDatePicker *picker = (UIDatePicker*)self.DateText.inputView;
self.DateText.text = [NSDateFormatter localizedStringFromDate:picker.date dateStyle:NSDateFormatterMediumStyle timeStyle:NSDateFormatterMediumStyle];;
}
我强烈建议您使用NSDateFormatter
和NSDateFormatterStyle
来表示您的日期。这将格式化用户想要的日期。
答案 1 :(得分:-1)
通过使用dateFormatter,您可以对日期执行任何操作;
NSDateFormatter *myDateFormatter = [[NSDateFormatter alloc] init];
monthFormatter.dateFormat = @"yyyy-MM-dd hh-MM-ss";
NSString *todayString = [myDateFormatter stringFromDate: datePicker.date];