Comment localiser mon application avec Xcode 4?

Je viens de mettre à jour à Xcode 4.

Normalement, lorsque vous localisez des applications, nous ajoutons le fichier “Localizable.Ssortingng” au projet, puis naviguez jusqu’au menu “Obtenir des informations” et cliquez sur le bouton “Make It Localized”.

Cependant, dans Xcode 4, il n’y a pas de menu “Obtenir des informations”.

Lorsque j’essaie d’append une langue, elle n’affecte que le fichier “InfoPlist.Ssortingng” (qui ne peut que localiser le nom de l’application).

Comment puis-je append la localisation à mon application dans Xcode 4?

C’est simple une fois que vous l’avez compris.

Si vous voulez accomplir cela avec Xcode 5 .x et iOS 7 ou Xcode 6 .x et iOS 8 , consultez ” Comment localiser mon application avec Xcode 5? ” À la place.

J’ai aimé le lien de SNR , mais sa réponse était un peu courte.

En outre, je vois que cette question est un peu ancienne, et ma réponse peut être différente des anciennes versions de Xcode. (J’ai utilisé Xcode v. 4.3.3)

Cependant , j’ai mis à jour ma réponse pour travailler à la fois avec Xcode 4.3.5 et inférieur + 4.4 et supérieur (et Xcode 5.x et 6.x ici: Comment localiser mon application avec Xcode 5? ).

Pour commencer, vous devez append un nouveau “fichier de chaînes” dans la catégorie de ressources iOS.

Fichier de cordes

Ensuite, créez le fichier en tant que “Localizable.ssortingngs”. Créer comme

Lorsque le fichier est créé, sélectionnez-le et ouvrez Inspecteur de fichiers.

Le fichier localisableInspecteur de fichiers

EDIT : Les choses ont changé (un peu) avec le nouveau Xcode 4.4, 4.5 (et supérieur) (pour le support iOS 6). Si vous n’utilisez pas Xcode 4.4 ou supérieur , passez à l’étape suivante.

{ La méthode Xcode 4.4, 4.5 (et plus) :

Cliquez sur le bouton “Rendre localisé” Faire un bouton localisé

Maintenant, rendez-vous sur votre page de projet principal. Page principale du projet

Et cliquez sur le bouton “+” sous Localisation et sélectionnez les langues que vous souhaitez prendre en charge.

(Je choisirai allemand / Deutsch)

Liste de langues

Une fenêtre apparaît maintenant vous demandant quels fichiers vous souhaitez localiser, assurez-vous que seul le fichier “Localizable.ssortingngs” est sélectionné et cliquez sur Terminer.

Seul le fichier

}

{ Le Xcode 4.3.5 et ci-dessous:

Cliquez sur le bouton “+” sous Localisation et sélectionnez les langues que vous souhaitez prendre en charge.

(Je choisirai allemand / Deutsch)

Liste de langues

}

.

.

.

.

Vous devriez maintenant voir que vous avez deux fichiers sous le fichier “Localizable.ssortingngs”.

Fichiers localisables

Ensuite, ajoutez vos chaînes de localisation dans les deux fichiers de localisation.

Anglais

allemand

Maintenant, voici la partie codage.

Ici, je vais simplement déclarer un UILabel et définir son texte sur la chaîne de fichier Localizable.

Déclarer:

 IBOutlet UILabel *testLabel; 

Et à l’intérieur de ViewDidLoad je définirai le texte en utilisant NSLocalizedSsortingng :

 [testLabel setText:NSLocalizedSsortingng(@"TEST", nil)]; 

Pour finir, connectez simplement notre testLabel dans “Interface Builder”.

Connect IBOutlet

Vous devriez maintenant pouvoir exécuter le projet et voir la chaîne localisée. Et si vous modifiez la langue, vous devriez également voir le changement de chaîne localisé.

Résultat anglaisChanger la langueRésultat allemand

Sélectionnez le fichier que vous souhaitez localiser et cliquez sur l’inspecteur de fichiers dans la section Utilitaires. Il y a une section Localisation

Vous pouvez afficher les informations sur le fichier (et append des localisations) lorsque vous sélectionnez le fichier et ouvrez “Inspecteur de fichiers” via le menu principal “Affichage” -> “Utilitaires” -> “Inspecteur de fichiers”.

Vous devez d’abord append un nouveau fichier Localizable.ssortingng et le sélectionner et aller dans Afficher “->” Utilitaires “->” Inspecteur de fichiers, cliquer sur le bouton + pour append la langue dans la section de localisation. Vérifiez aussi XCode 4, Ajout de la localisation

la méthode de localisation dans xcode4 a changé! Cliquez avec le bouton droit de la souris sur le fichier localizable.ssortingngs et, pour append le support pour une autre langue, cliquez simplement sur le «+» dans le volet «Localisation» à droite.

Vous pouvez prendre en compte les atsortingbuts d’exécution définis par l’utilisateur:

http://cupobjc.blogspot.com.es/2014/04/interfaz-builder-localization.html

Définissez d’abord une nouvelle catégorie pour UILabel:

 #import "UILabel+Localized.h" @implementation UILabel (Localized) -(void) setTextLocalized:(NSSsortingng *)aText{ [self setText:NSLocalizedSsortingng(aText, nil)]; } @end 

Ensuite, dans le générateur d’interface, les atsortingbuts d’exécution définis par l’utilisateur:

textLocalized Chaîne votre chaîne à localisée

entrer la description de l'image ici

Et vous n’avez pas besoin de déclarer l’IBOutlet, et vous n’avez pas besoin de code dans ViewDidLoad [testLabel setText: NSLocalizedSsortingng (@ “TEST”, nil)];

Ou vous pouvez utiliser TraductoPro pour automatiser ce processus et économiser beaucoup de temps. C’est une application Mac qui s’intègre bien avec Xcode.

Si vous voulez un moyen dynamic de changer de langue dans votre application ET en utilisant une solution basée sur les pods, consultez:

https://github.com/nullic/DPLocalizationManager

Installer avec: pod 'DPLocalization', '~> 1.2'

Il prend en charge les mêmes fichiers de localisation standard mais utilise également la liaison dynamic à l’aide User Defined runtime atsortingbutes par l’ User Defined runtime atsortingbutes ainsi que du code interne tel que viewDidLoad .

Quelques exemples dans l’exemple de projet:

  self.startup.text = DPLocalizedSsortingng(@"TITLE", nil); self.label.autolocalizationKey = @"LABEL_TEXT"; [self.label updateAutolocalizationArguments:@[@"Hello", @1234567890, [NSDate date]]]; self.autolocalizationKey = @"TITLE"; 

Téléchargez le projet git qui comprend des exemples de projets montrant plusieurs exemples.