正文  软件开发 > iphone开发 iOS开发 >

DatePicker 获取时间的时区问题

实现日期选取器:想在每次加载软件的时间都能将选取器加载到当前的日期和时间,需要在viewDidLoad中创建一个新的NSDate对象,通过这种方式创建这个 对象包含当前的时间和时间。然后将datePicker设置为该日期,这 ...

实现日期选取器:

想在每次加载软件的时间都能将选取器加载到当前的日期和时间,需要在viewDidLoad中创建一个新的NSDate对象,通过这种方式创建这个 对象包含当前的时间和时间。然后将datePicker设置为该日期,这样就可以确保每次从nib中加载此视图时,选取器都会重置为当前得日期和时间..


  1. -(void)viewDidLoad{ 
  2.     NSDate *now = [[NSDate alloc]init]; 
  3.     [datePicker setDate:now animated:NO]; 
  4.     [now release]; 
  5.   

然后在你需要获取日期的方法中:


  1. NSDate *selected = [datePicker date]; 
  2.   

你可以获取到当前0时区的时间,如果需要设置日期的格式需要添加如下的格式订制:


  1. NSDate *selected = [datePicker date]; 
  2.  
  3. NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];  
  4. [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm +0800"]; 
  5. NSString *destDateString = [dateFormatter stringFromDate:selected]; 
  6. NSString *message = [[NSString alloc] initWithFormat: 
  7.                          @"The date and time you selected is: %@", destDateString]; 
  8.   

这是规定了东八时区的时间格式。