2012-12-20 19 views
0
[asset valueForProperty:ALAssetPropertyDate]); 

被正確顯示錯誤的時間,其表示分鐘,但小時是從目前的5以下。alasset表示錯誤的時間

但是我的設備在狀態欄中顯示正確的時間。

+0

我建議ALAsset不考慮當前時區考慮設置時/返回日期 –

+0

可能的時間是在格林尼治標準時間 – Lefteris

+0

我該如何解決 –

回答

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];