yアプリケーションユーザーは、異なるタイムゾーンの投稿を作成して、投稿が何分または何時間前に投稿されたかを表示できます。しかし、現時点では、私のタイムゾーンでは正しく表示されており、他のタイムゾーンでは機能していません。私は、これまで実施してきた何iosの異なるタイムゾーンで同じ時間差を表示する方法
:
NSTimeInterval timestamp = [data.createdDate longLongValue];
NSDate *date = [NSDate dateWithTimeIntervalSince1970:timestamp];
NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
NSTimeZone* destinationTimeZone = [NSTimeZone systemTimeZone];
NSInteger sourceGMTOffset = [sourceTimeZone secondsFromGMTForDate:date];
NSInteger destinationGMTOffset = [destinationTimeZone secondsFromGMTForDate:date];
NSTimeInterval interval = destinationGMTOffset - sourceGMTOffset;
date = [[NSDate alloc] initWithTimeInterval:interval sinceDate:date];
date.createdDateは、サーバから来るタイムスタンプ値です。 サーバーの時刻は私のタイムゾーンです。
あなたは差がある理由は、他のタイムゾーンのための2タイムゾーン、日付を持っています。どちらの日付にも同じタイムゾーンを使用しないでください。 – rishi
私はそれがどのように動作するか見ていない! @rishi – Fay007
現在のところ、ソースタイムゾーンはGMTで、デスティネーションタイムゾーンが異なる場合、デスティネーションタイムゾーンはデバイス設定に基づいて変更されているため、時間が異なることがあります。タイムゾーンをsystemTimeZoneに設定すると、サーバーからシステムのタイムゾーンに日付を変換し、時間差を取得することで試してみることができます。 – rishi