UIDatePicker.date 错误

UIDatePicker.date bug

我在从 UIDatePicker 获取日期时遇到问题。我知道获取日期的代码,但它只是继续获取​​当前日期,而不是选择器中的日期。

- (IBAction)buttonPressed:(UIButton *)sender {

NSDateFormatter *formate = [[NSDateFormatter alloc]init];

NSDate *settedDate = self.myPickedDate.date;
[formate setDateFormat: @"dd.MMM.yyyy @ HH:mm:ss"];

NSString *dateString = [formate stringFromDate:settedDate];
NSLog(@"datestring: %@", dateString);
}

我将 myPicker 设置为 2015 年 5 月 15 日 15:30 并且 Xcode 注销当前日期(如果是 16:19 他将注销 22nd.Apr.2015 16:19, 不管怎样.

Xcode 模拟器上的 5.1.1 iOS 7.1.2(还没有在真机上试过)。

问题是在你的viewDidLoad中你是这样说的:

self.myPickedDate = [[UIDatePicker alloc] init];

所以,想想那个代码。你在那里做的是创建一个 new 日期选择器,与你界面中的那个完全 不同,并且 替换 它用于您界面中的那个,之前设置了 self.myPickedDate (因为它是一个插座)。所以从现在开始,self.myPickedDate 指的是一个 different 日期选择器,一个在你的界面中 not 的日期选择器(它只是保存在记忆)!因此,您在界面中所做的任何操作(例如在您在那里看到的日期选择器中设置日期)都不会对 self.myPickedDate.

产生任何影响

因此,要解决问题,删除那行代码