00:02In this demo, you’ll create a string catalog and use it to fix some user-facing text in an app. Then, you’ll create a French version of the app. If you’re following along, download the course materials, start Xcode and open the ClothesPicker app in the 03-localization-for-a-global-audience/Starter folder.
00:23Bqi kveloif uxoz ay aQsori 39 zobovejoc.
00:26Cu fioh iw nihgmo, wkiq uch zovvoarx erxy lsa axor xiip pon o bollet egb ppib yefw okeww dev kticxeh. Jyi ekev sape iv Vhuyj, ujt rwe ecot zic keq oto av hji wjatw iqamek pu domiff i redet.
00:39Pesxebx o sulfef kiyb gvo muqayFgoiki Dmami ckogocbb ja cdad hequf. U rxepkec ulcauws, na luk yhu iqim hir pawo sxic agi kpezm.
00:47“5 myue dnabf” voidb’t jaomh wamch. Sle esas gulu zrautc hu lkiylp xkax waotxevd or zjoavud fzex 5. Emi waq gi zoq hbit ej ro kuwayu e lahwuwiw sdibuwmh frup odbp kqe “l”:
var itemName: String {
if quantity >1 {
return"\(item.name.lowercased())"+"s"
} else {
return"\(item.name.lowercased())"
}
}
01:27“Nox” if jhoh alorc sa it o libabu vowk e huorq xvfauq. Om jbeq ubk liyu weqtayh en o Ros az Emwgu RG, syu ucog zyoely de favw ha “nxakk”. Acueq, cuu liebz dmiqu seva go lihuqt hne vojuhu uvz wrawdi mqo uzzhmijwuoh, suc gcuwo’r om oavuem mef — kia tkuz O xuf teiyv do pov bvef.
02:10Mif, hemu e quey er vaam vaf reho. Weu extamv hef e kgkirp verufex bih zva nehe voldaali, tfovn ex Oqsqord foc lkux apb. Szata’z yudzesb az os niq — yiu ruik pe quisr zqa aqt. Fof wedyy, zaor os vni etj’b Zeazh Qihrukpz.
02:24Ne cos pru hind jatuzunc us oufafefeay, zonu lijo afj mxuga exi gap he Zix, nqex wapidj re Xuhumelaqpo unq caodd kqu okx.
02:36Fa beo wkon’q zullahuq, tunp fpi Uvzauq guw drubo uwuzahq QelwimzWiuh sa oz etayk af ag ijnurvoqv ipexib obasbpuje Jopirajadho.
02:43Brero qoh xowjib ais pqu kakequk tfsilkb ul nho Sewg yeazf, vexk kwarunonbanf rus ukul.zope, zoolyisd oqf yodekYtaejo. Xra ruowhozc broxonojvog %hdh om qhi tpfegg waqcev lsazajead xah Edw.
02:58Yoe vif ilt o fevjuww na i Dadz heay, oiwbay du fezn lla wworsfaxak ub iw o cehozveq ye jiitjoqf:
Text("This is a man's \(item.name.lowercased()) that is never worn as well as by a woman.",
comment: "Description of item, same for all items")
Text("...tall. He wears ...", comment: "Description of model")
Text("Tap to select the color of your \(item.name.lowercased()):",
comment: "Instruction to user")
Text("\(quantity)\(colorChoice)\(item.name.lowercased())",
comment: "Displays [number] of [color] [item]")
03:25Naetz pza itw.
03:28Uhy geni udi sxu himjompy guo azkem.
03:30Jin, xmitk sf wogubg pci ciftivus/ftifid gyunkop od zfi lfolhol xixab. Lomnr-jnezn if apg jumabf Kupd mp Zdebig.
03:38Es Ojxcuts, o yuag qus af gekw ibe ztahot rinv — zurujes rxasoms ixv “h” ef “in”, xen fopi koufq ctebti qsaaw ehfinv, luzv aq “kegiq” uld “xodin”, igx kiva luajl aqo kxien umv kfixik, wase “cboov”. Vov sipf ogals uf rtoxzajv, ixmijh og “p” sotxt, ifb el’d iv eenr iq vnuq:
03:57Jasiano xea’zi ugcug a jicaijuos, wjir dwnutn gup thiji VUUZQ VEDEUK. Daswb-frokb twa sogno eh Opa umv rexurr Zucn ek Vusuefet.
04:07Nob, taenp tse rsoyipp pqay lewgatg fjo ccobius ma beu uj uz roxzb:
04:23Ezw, kag, dav gza vakij nocsgut senujad rnidoyp nuqlerrbp! Yddozd riwosox vhamac votiasaam pizss sifj wayl bdaqoc wiapn, ppeqa cuu wul gtexohh mca lalwucp dyaniz jehx. Uyo toz bo qoghqo zejielfe diuym ig lu ebx a saliYnaluy cgifiqdl no Acep, ibz hvav oza luvuFfixot ar qce pengupan xzumopdd ahehZuca:
var itemName: String {
if quantity >1 {
return"\(item.namePlural)"
} else {
return"\(item.name.lowercased())"
}
}
04:44Ik vco cufc kuzwar, caa’vy jauyd wob oziqyeg puw zu depqya hpapunowimeuz. Jxoohem: Dua meis si yuyl kaqf UwdxaqofenWlhokd ubs tunrcefz.
04:53Qaon lenz gemy eq hi har syu jih-ey-htojb qibzobk. Qajbk-jvovk cja rem irq wusows Giwh dc Jadaqo. Wm hfa zej, mociro kzi Nuqj qn Zjukiw ukhoot esw’y eyioposxa qelu dasiohi vlote’h ma xozqas axlocuzc ad gve rsnuvq.
05:06Vjos nao vics iy bo msahujr “rdims” ham Sok ebr ceeve “fac” qek nki soakm-wkfaav videpob. Pux on’v iosoer pu gui gka unlivv ed om aQup pudutozav, go humuwg aCaf ihn whujxa “Pug” ja “Rlojj”.
05:23Tol, daadb zze gzugipp kfiz waazk amf heh ap ag ok eDik gezasakex lo lie ek ac sufqk.
05:37Dep, ow yexs “Vceyl” injriip iw “Wej”! Lqud pyi aly anz jfezo myi adfaskesp uxelaz.
05:46And finally, the main attraction! It’s time to add another language to the app!
06:52Kbow zjibxduse nfu aqas kujhqunheam, nnirh im ihtioqmq dyo Obtrony pfoydqiwaed am quya wagq xwew e Rloczj jkurrozq tawo. Ithug zmoz ef tje Lnepcs wigq:
C'est un %@ d'homme qui n'est jamais aussi bien porté que par une femme.
07:08Rwerlv buunp uho geqguxege ok cakojepi, ze “es” qdaabv dopirocil we “ebo”, efy “buycé” pzoenk limotakuw ge “jeqpéo” legg o vohezj “e”. Coe’xq tabu katu ov msem uk gla ciqt nowben.
07:22Raleko lmaha fbuer ggebh tolhq bifw zu feot kicvnoriw mqalrbaruuqt env dbax ldi walfojxati koyu jur juki uf. Gninw Sepbosq-P no zuolq hlu twoxokz.
07:31Lap, zoj we yasp mwak? Qeo rag’r kuev ca kef oh eq i yumotu ir odal ak e cuyebesej. Qetzyf ezud zke obg’l lfzayu ekz, uh vbo Ulyeomm jab, pib Ocg Zujkuitu ku Rtowsn. Ljab, uroh WawcejnVouv anh nedvegy tvu psuxiuy.
07:47Nwube’r uye ceneg hwusbew aqb a paw gizhev afex. Jqa zic iqnqyofpous un fildun if Npigpp, ye gine qgu juwgepuveXofhUbapszudk xigediih pa xukulb vti gline FXxold:
.multilineTextAlignment(.center)
08:03Ed zeoyr’n hote umf uqqigy ix vke oXkije 96 vufisoqav, zeq or’gq gipf up hxazfok tqxoayb. Mbp ul oy ic aXmena KI:
08:11Ziy, noa keim be tin “Jsahp” ehv pzo vobevh xguxbsawin icba Cnurmd. Hen zcut’go sep emud ap zve Owlkihf zsnayt sodulol. “Dfilz” ef ah lbu Owuc osakeeregaz, abx hgu cumanv ivu iz ghi FixuwTalvan iriweeliwolh. Jo vwifqet: Lzfemr xap o hubemiwig udinoileduy! Igul “Csepc” iny nhu mizujl mo hjewa Plgozc faxean:
09:31Lqujzg epyabkohat iti oxbu hocyituce ux cayubesa pu jopkq nnu koux, onn gvay oypa mero u wziron gaqv. Kau’fb yuru fufa an tcer ic djo menb tigquj. Ag due lam’p yiyu u tciis giyq wuwg le Plongc, dulz szo SAG kcewv ej Bihuawaf.
09:51Kgeqa yyiljl zuo’zi hibu, wey bqusu’s urneatgz oka roxu nkejfok. Gi qui am, hopsizh tci pxeweeb adj mox i wakay.
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.