0

私はiPhone用の天気アプリを開発しており、iOS5ではすべて正常に動作していますが、iOS6で表示されている日付には非常に奇妙なことがあります....

しかし、このコードが返す奇妙なこれsatuarday instead of monday sunday instead of tuesdayなど....しかし、iOS 5では正常に動作しています

私は次の方法を使用して曜日を表示しています..

-(NSString*)calculateDayOfTheWeek:(NSString *)date
{
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    // [formatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
    [formatter setDateFormat:@"YYYY-MM-dd"];

    NSDate *date1 = [formatter dateFromString:date];
   // NSCalendar *gregorian = [NSCalendar currentCalendar];
    NSCalendar *gregorian = [[NSCalendar alloc]initWithCalendarIdentifier:NSGregorianCalendar];
    NSDateComponents *comps = [gregorian components:NSWeekdayCalendarUnit  fromDate:date1];

    int w = [comps weekday];
    //  NSLog(@"%i",w);

    if(w == 1)
        return @"Sun";
    else if (w == 2) 
        return @"Mon";
    else if(w == 3)
        return @"Tue";
    else if (w == 4) 
        return @"Wed";
    else if(w == 5)
        return @"Thu";
    else if (w == 6) 
        return @"Fri";
    else if (w == 7) 
        return @"Sat";

    else
        return @"";
}
4

1 に答える 1

0

ahhhhh.....私はそれを理解しました....彼らは日付形式をからYYYY-MM-ddに変更しましたyyyy-MM-dd...

それは誰かの助けになるかもしれません...

于 2012-10-17T04:23:48.180 に答える