2016-08-01 1 views
0

Je dois classer cette chaîne de sortie qui dépend du jour actuel. Ça marche bien en russe, mais quand je change de langue, ça ne marche pas. Voici comment je l'écris:Vérification de la chaîne de jours de la semaine dans différentes langues

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"EEEE"]; 

    // Current day 

    NSString *currentDay = [dateFormatter stringFromDate:[NSDate date]]; 

    // Mon 

    if ([currentDay isEqualToString:@"понедельник"]){ 
     _mon.textColor = COLOR_BG; 
    } 

Existe-t-il un moyen facile de faire fonctionner ce code dans d'autres langues? Ne dépend pas de la langue sélectionnée par l'iPhone actuel?

Répondre

1

Vous comparez ici la chaîne qui est différente pour une autre langue.

Donc vous avez une traduction pour chaque langue en semaine ou ma façon recommandée est de changer le formateur pour retourner un entier de la semaine. Si je ne me trompe pas est e

Il sera donc:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"e"]; 
int current = [[dayDateFormatter stringFromDate:[NSDate date]] intValue]; 

if (currentDay == 1){ 
    _mon.textColor = COLOR_BG; 
} 
+0

comment puis-je faire un entier qui représentent la semaine numéro de jour? –

+0

Je l'ai mis à jour. Est hors du TOP de ma tête, pourrait avoir une erreur. –

+0

ok je l'essaie plus tard, merci) –