2014-10-13 25 views
5

Sto provando a localizzare una lista di stringhe. Ho alcune foto, e per ogni foto una descrizione di ciò, e voglio tradurre la descrizione in un'altra lingua.XCode localize string Swift

Questo è il codice:

var imageList:[String] = ["new_york_city_sky_house_skyscraper_59212_640x1136.jpg","79506M1pZO4U6d12i0Xzf27765gWo71P5061732uthh68xHQ8Dq1yTQ0Bj8p9F45.jpg","iphone 5 wallpaper new york.jpg","New-York-Vintage-Effect-iphone-5-wallpaper-ilikewallpaper_com.jpg","Superb-View-Over-New-York-iphone-5-wallpaper-ilikewallpaper_com.jpg","New-York-Empire-State-Building-1136x640.jpg","New-York-City-iphone-5s-wallpaper-ilikewallpaper_com.jpg","new-york-city.jpg","New-York-By-Day-iphone-5-wallpaper-ilikewallpaper_com.jpg","The-Empire-State-Building-New-York-1136x640.jpg"] 

var nameList:[String] = ["1","2", "3","4","5","6","7","8","9","10"] 

var sentMessage: [String] = ["Description here 1", "Description here 2", "Description here 3", "Description here 4", "Description here 5", "Description here 6", "Description here 7", "Description here 8", "Description here 9", "Description here 10"] 

mi piacerebbe tradurre categoria elenco nomi e categoria messaggio inviato, in questo modo: "Descrizione qui 1" in "Descrizione qui 1", "Descrizione qui 2" "Descrizione qui 2" ...

Cosa posso fare? Sto imparando da solo a creare un'applicazione perché ho delle idee, ma sono bloccato qui ... Grazie!

risposta

4

È possibile aggiungere tutte le localizzazioni nelle informazioni del progetto. Il file è un array key/value. Dopo nel codice è possibile chiamare in Objective-C

NSLocalizedString(key:tableName:bundle:value:comment:) 

come

var description = String(format: "%@ %d", arguments: NSLocalizedString("descriptionHere", comment: ""), 2) 

Qui potete vedere un progetto rapido con l'internalizzazione. http://rshankar.com/internationalization-and-localization-of-apps-in-xcode-6-and-swift/

+0

Non so se ho ragione. Ho cambiato il sentMessage scritto prima in var sentMessage = Stringa (formato: "% @% d", NSLocalizedString ("descriptionHere", commento: "Descrizione qui"), 2) Ma ho un errore: 'NSInteger' non è convertibile in 'String.Index' qui: @IBAction func ShowView() { let vc = SecondViewController (nibName: "SecondViewController", bundle: nil) vc.sentMessage = sentMessage [ImageIndex] showViewController (vc, mittente: self) Cosa posso fare? – MatteoAB

+0

prova a cambiare% d in% @ in formato; –

+0

% @% @? Ho provato e mi ha dato lo stesso errore. È corretto inserire la descrizione "Localizable.string" Qui = "Descrizione qui" ;? – MatteoAB