0
[asset valueForProperty:ALAssetPropertyDate]); 

間違った時間を表示していますが、分は正しく表示されていますが、時間は現在より 5 少ないです。

しかし、私のデバイスはステータス バーに正しい時刻を表示しています。

4

1 に答える 1

1

呼び出し[asset valueForProperty:ALAssetPropertyDate]は NSDate で返されます。NSDate オブジェクトには、timeZone がエンコードされています。NSDate を NSString として表示するには、NSDateFormatter を使用する必要があります。

NSDate *date = [asset valueForProperty:ALAssetPropertyDate];

NSDateFormatter *dateFormatter = [NSDateFormatter new];
[dateFormatter setDateStyle:NSDateFormatterShortStyle];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
NSString *dateString = [dateFormatter stringFromDate:date];


[dateFormatter setDateStyle:NSDateFormatterNoStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
NSString *timeString = [dateFormatter stringFromDate:date];
于 2012-12-22T13:15:42.330 に答える