web-dev-qa-db-fra.com

Swift: localisation dans le storyboard - Etiquettes non ajoutées à Main.strings?

Lorsque j'essaie de localiser mon application et que je crée un nouveau fichier Main.strings pour la langue cible, tout ce que j'ai créé dans le générateur d'interface (libellés, boutons, ...) est ajouté aux nouveaux fichiers Main.strings (base et langue). versions) et je peux localiser le texte en conséquence.

Toutefois, lorsque j'ajoute ultérieurement une étiquette ou un bouton à un ViewController dans le générateur d'interface, il n'est pas ajouté automatiquement aux fichiers Main.strings pour la version de base et la version linguistique.

Alors, comment puis-je savoir quel est l'identifiant ObjectID du bouton/de l'étiquette afin de pouvoir l'ajouter aux fichiers de chaînes?

Ou existe-t-il un autre moyen de forcer Xcode à ajouter automatiquement les étiquettes et les boutons récemment ajoutés à ces fichiers?

7
RjC

Après avoir sélectionné l'étiquette dans le storyboard, vous pouvez trouver l'ID d'objet UILabel dans le panneau de droite:

 enter image description here

Ensuite, vous pouvez définir le texte de l'étiquette comme ci-dessous dans votre fichier Main.string:

"v12-vM-an5.text" = "Phone";
12
Dhaval Bhimani

La réponse de Dhaval Bhimani est la solution la plus simple pour localiser un petit nombre de composants de vue nouvellement ajoutés. Si vous souhaitez régénérer toutes les localisations d'un storyboard, cochez la case Main.storyboard-> décochez les cases pour la localisation de toutes les langues. cochez la case "Supprimer les fichiers de ressources localisés du disque"  enter image description here assurez-vous maintenant que vos étiquettes et boutons nouvellement ajoutés sont présents et localisez à nouveau en sélectionnant les langues. Juste au cas où sauvegarder vos fichiers de chaîne avant cela

0
EarlySun