首页 文章

将设备日期和时间转换为PST TimeZone

提问于
浏览
0

正如我的 Headers 所说我需要将我的 iPhone 设备日期和时间转换为 PST timezone?

我从服务器获得NSSate NSSate格式为 PST Timezone ,所以我需要将当前设备时间转换为 PST Timezone .

在我的应用中 . 我需要设置UIDatePicker的最小和最大时间

最短时间=当前时间;最长时间=我从服务器获得的日期(字符串格式) .

我使用以下代码

NSString *dateString = [[self.listOfDomains objectAtIndex:indexPath.row] objectForKey:@"ends_at"]; // got from Server 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSDate *maxDate = [[NSDate alloc] init];
    maxDate = [dateFormatter dateFromString:dateString];

    NSCalendar *calMax = [NSCalendar currentCalendar];
    NSDateComponents *pstCompoMax = [calMax components: NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit fromDate: maxDate];
    pstCompoMax.timeZone = [NSTimeZone timeZoneWithName: @"PST"];
    NSDate *pstMaxDate = [calMax dateFromComponents: pstCompoMax];

并在datePicker中使用它

[self.datePicker setMinimumDate:pstMinDate];
[self.datePicker setMaximumDate:pstMaxDate];

但我无法在datePicker中设置最小和最大日期 . 但是,如果我只设置datePicker的最小/最大日期,那么它的工作原理..

为了解决我的问题,我正在尝试大约2小时,但我找不到任何解决方案 .

对于您的信息:我正在使用Xcode 5,我需要在iOS版本5到Latter(iOS 7)中使用它

请帮我解决这个问题,

提前致谢 .

1 回答

  • 0

    问题似乎是NSTimeZone的设置 . 你可以尝试在datepicker中设置如下所示的时区: -

    datePicker.timeZone = [NSTimeZone timeZoneWithName: @"PST"];
    

相关问题