Localizar cadenas y String Catalogs
Traduzca la interfaz con String Catalogs.
Localizar cadenas y String Catalogs es una lección gratuita de SwiftUI Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de SwiftUI Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de SwiftUI Academy incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
Why Localize?
Localization translates your app's text so people read it in their own language. It widens your audience around the world. 🌍
Strings Are Already Keys
In SwiftUI, a Text("Hello") literal is automatically treated as a localizable key. You often get translation for free.
Text("Welcome back")Meet the String Catalog
A modern String Catalog (.xcstrings) gathers every key in one editable table with a column per language.
Adding a Catalog
Add a String Catalog via File, New File, then build once. Xcode auto-collects the strings used across your app.
Adding Languages
In project settings, add a language under Localizations. A new column appears in the catalog, ready for translations.
Interpolating Values
Insert dynamic values right inside Text. Swift turns them into a format key so each language can place them correctly.
Text("Hi, \(name)!")Giving Translators Context
Add a comment so translators know what a string means. The same word can be a noun or a verb.
Text("Open", comment: "Verb on a button that opens a file")Handling Plurals
Languages pluralize differently. A String Catalog supports plural variations so "1 item" and "5 items" both read naturally.
Text("^[\(count) item](inflect: true)")Localizing in Code
Outside a Text view, wrap user-facing strings in String(localized:) so they still get translated.
let msg = String(localized: "Saved")Don't Hardcode Layout
Translations can be much longer than English. Let views resize instead of using fixed widths so text never gets clipped.
Test with a Pseudolanguage
Run the scheme in a pseudolanguage to expand and accent text. It surfaces clipped labels before real translation begins.
Quick Check
Which file type is the modern, recommended way to manage translations in Xcode?
Recap
You can reach a global audience: Text literals are keys, a String Catalog holds translations, and comments plus plurals keep them accurate. 🌟
Preguntas frecuentes
¿La lección «Localizar cadenas y String Catalogs» es gratis?
Sí — el texto completo de «Localizar cadenas y String Catalogs» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de SwiftUI Academy, actualiza a CoddyKit PRO. El curso de SwiftUI Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Localizar cadenas y String Catalogs»?
Traduzca la interfaz con String Catalogs. Practicas SwiftUI Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar SwiftUI Academy?
No se requiere experiencia previa. SwiftUI Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Localizar cadenas y String Catalogs»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de SwiftUI Academy?
Sí. Cada lección de SwiftUI Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- VoiceOver y etiquetas de accesibilidad
- Dynamic Type y fuentes escaladas
- Localizar cadenas y String Catalogs
- Adaptarse a los modos claro y oscuro