App Store er et globalt marked, og ved å lokalisere appen din, vil brukere i andre land ha større sannsynlighet for å laste ned og nyte det. I denne veiledningen iOS vil vi gå over hvordan du lokaliserer teksten i appen din for flere språk.
Med mindre du er flytende på språket du vil oversette appen din til, kan du bli stubbet om hvordan du skal gå om å få dette trinnet gjort. Det finnes noen få alternativer for oversettelse. Et alternativ er ganske enkelt å bruke Google Translate, et gratis oversettelse nettsted levert av Google. Dessverre kan automatiserte datatranslationer være langt fra perfekt, men dette kan fortsatt være bedre enn ingenting. Et annet alternativ er å leie en oversettelsestjeneste. Et raskt Internett-søk viser at det er mange selskaper tilgjengelig som tar teksten fra appen din, og oversetter den manuelt til det ønskede språket. Til slutt kan du prøve å finne en venn eller en medarbeider som er flytende i målspråket og be dem om å oversette app-teksten for deg. Husk at en person som også er kjent med målspråket sin kultur, kan være i stand til å gi deg mer nøyaktige oversettelser enn noen som kun har akademisk kunnskap om språket.
Start Xcode og klikk på File> New> Project. Klikk på "Application" under IOS-panelet til venstre. Klikk på "Single View Application" -ikonet og klikk deretter på "Next".
I feltet "Produktnavn" skriver du "LocalizationDemo" og skriver inn et navn for firmaidentifikatoren, for eksempel "com.mobiletuts". Velg "iPhone" fra menyen "Enhetsfamilie". Fjern merket for "Bruk Storyboards" og "Include Unit Tests", og merk av "Use Automatic Reference Counting". Klikk på "Neste", velg et sted for å lagre prosjektet, og klikk deretter "Opprett".
Først legger vi til to nye språk, fransk og spansk, til appens info.plist-fil. Dette informerer iTunes om hvilke språk appen din støtter, noe som gjør det mulig at flere språk vises under appens navn i App Store. Klikk på "localizationDemo-info.plist". Klikk på den siste raden i filen og klikk på den grå pluss-knappen i den første cellen. Skriv "Lokaliseringer" i den nye cellen. Klikk pilen til venstre for cellen for å vise ditt opprinnelige språk, i vårt tilfelle, engelsk. Klikk på pluss-knappen ved siden av "Lokaliseringer" og legg til "Fransk" i matrisen. Klikk på pluss-knappen igjen og skriv "spansk".
.strenger
FilDeretter legger vi til en strengfil for å lagre lokalisert tekst. Klikk på Fil> Ny> Ny fil.
Velg en iOS Resource Strings-fil og klikk "Neste". Pass på at filen din heter "Lokaliserbar" før du klikker "Opprett".
Klikk på den nyopprettede filen "Localizable.strings" og legg til følgende kode for å opprette et engelsk nøkkelverdi-par.
"HelloKey" = "Hei";
Et nøkkelverdierpar er akkurat det som står, venstre side av likestegnet er nøkkelen og høyre side er verdien. Vi vil bruke nøkkelen om et minutt for å få tilgang til den tilknyttede verdien og sette den som etikettens tekst.
.strenger
filerNå lager vi strengene filer for fransk og spansk. Klikk på Vis> Verktøy> Vis filinspektør. Klikk og hold pluss-knappen nederst i "Lokalisering" -panelet. Velg "Fransk" fra rullegardinmenyen, og klikk på pluss-knappen igjen. Denne gangen velger du "Spansk" fra rullegardinmenyen.
Legg merke til at "Localizable.strings" har en utvides pil ved siden av den; Klikk pilen for å se de tre språkene, engelsk, fransk og spansk. Klikk på den franske strengfilen og endre nøkkelverdierparet til koden nedenfor.
"HelloKey" = "Bonjour";
Klikk på den spanske strengfilen og endre nøkkelverdierparet til følgende kode.
"HelloKey" = "Hola!";
Klikk på "ViewController.m" filen og legg til følgende kode til viewDidLoad
Metode for å lage en etikett hvis tekst er satt fra en lokal strengerfil.
// få lokalisert streng fra riktig strenger fil NSString * localizedHelloString = NSLocalizedString (@ "HelloKey", @ ""); // lage etikett - sett tekstegenskap til lokalisert streng CGRect localizedLabel_Frame = CGRectMake (20.0f, 40.0f, 280.0f, 44.0f); UILabel * localizedLabel = [[UILabel alloc] initWithFrame: localizedLabel_Frame]; localizedLabel.text = localizedHelloString; localizedLabel.textAlignment = UITextAlignmentCenter; localizedLabel.font = [UIFont boldSystemFontOfSize: 20.0f]; // legg til etikett for å vise [self.view addSubview: localizedLabel];
Legg merke til at vi brukte makroen NSLocalizedString () for å få lokalisert verdi fra strengfilen til det aktuelle språket. Dette er mulighetene for å sette inn teksten basert på brukerens språkinnstilling. Som standard, NSLocalizedString ()
ser etter en fil med navnet "Localizable.strings". Hvis du navngitte strenger, filer noe annerledes, vil makroen ikke kunne finne strengerfilen som inneholder lokalisert verdi.
Klikk på Produkt> Kjør, eller klikk på pilen Kjør øverst til venstre i Xcode-vinduet. Prosjektet bygger med vår originale engelske tekst, "Hei".
Klikk på Hjem-knappen for å forlate appen. Klikk Innstillinger> Generelt> Internasjonalt> Språk for å få tilgang til språkinnstillingene.
Velg fransk eller spansk fra menyen, og gå tilbake til appen LocalizationDemo.
Se at teksten er endret til det nye språket.
Hvis appen din er tekst tung og du planlegger å lokalisere for mange språk, er det viktig å holde nøkkelverdiene dine organisert. For å se hvordan jeg organiserer teksten min, last ned kildekoden og se på strengfilene. Spørsmål eller kommentarer? Du er velkommen til å forlate dem i kommentarfeltet eller sende dem direkte via Twitter.