2011-06-07 6 views

Répondre

26

Vous devez créer un dossier pour chaque langue que vous utilisez au format "language.lproj" (par exemple en.lproj, de.proj) - vous devez créer un fichier appelé Localizable.strings (Compiler Action : Content)

Le fichier ressemble à ça:

"Name For Your String"="Translation For Your String";  // don't forget the semicolon! 

vous pouvez appeler NSBundle.MainBundle.LocalizedString ("nom pour yourString", "", "")

est ici une courte prolongation méthode qui rend la traduction un peu plus facile:

public static class Extension 
{ 
    public static string t(this string translate) 
    { 
     return NSBundle.MainBundle.LocalizedString(translate, "", ""); 
    } 
} 

-vous l'utiliser de cette façon:

// don't forget the using 

"My String".t(); 
+0

Merci Thomas. J'ai donc besoin de traduire tous les mots anglais manuellement pour cela. droite? Est-ce qu'il y a un autre moyen? que diriez-vous de google translate? – bharath

+0

Vous pouvez copier uniquement la chaîne non traduite et la traduire, mais je voudrais simplement utiliser l'anglais au lieu de google translations Pour la traduction par mot, il existe différents services de traduction que vous payez par mot qu'ils traduisent. –

+0

J'ai utilisé des mots dynamiques. Fondamentalement toutes les valeurs venant du serveur seulement. Si l'utilisateur veut changer la langue signifie que j'ai besoin de changer au sein de l'application. Je ne veux plus appeler le serveur pour ça. – bharath

Questions connexes