luoyuant / MOFSPickerManagerDemo

iOS PickerView整合,一行代码调用(省市区三级联动+日期选择+普通选择)
MIT License
136 stars 27 forks source link

日期选择器,Date和Time都显示的时候,显示的Time时间总是比选中的时间多4个小时,是怎么回事? #18

Open ioswangqiang opened 4 years ago

ioswangqiang commented 4 years ago
[[MOFSPickerManager shareManger] showDatePickerWithTag:0 firstDate:[NSDate date] minDate:nil maxDate:nil datePickerMode:UIDatePickerModeDateAndTime commitBlock:^(NSDate * _Nonnull date) {
    MyLog(@"选中的日期:%@",date);

} cancelBlock:nil];

显示的Time时间总是比选中的时间多4个小时

luoyuant commented 4 years ago

@ioswangqiang 你设置一下这个试试[MOFSPickerManager shareManger].datePicker.locale = [NSLocale localeWithLocaleIdentifier:@"zh"];

ioswangqiang commented 4 years ago

@ioswangqiang 你设置一下这个试试[MOFSPickerManager shareManger].datePicker.locale = [NSLocale localeWithLocaleIdentifier:@"zh"];

试过了还是一样的,选择下午4点,结果显示出来是8点

luoyuant commented 4 years ago

@ioswangqiang 不要直接打印,你这么打印:NSDateFormatter *df = [NSDateFormatter new]; df.dateFormat = @"yyyy-M-d HH:mm";NSLog(@"%@", [df stringFromDate:date]);

我试了,直接打印有问题的,时区不一样。

ioswangqiang commented 4 years ago

NSDateFormatter *df = [NSDateFormatter new]; df.dateFormat = @"yyyy-M-d HH:mm";NSLog(@"%@", [df stringFromDate:date]);

行,设置了日期格式就好了