Un modo (certamente discutibile) di realizzare facilmente questo è usare le localizzazioni di bundle framework di Apple direttamente:
Per vedere ciò che hanno da offrire, aprire la seguente directory tramite il Finder:
/Applications/Xcode/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/System/Library/Frameworks
E nel tuo caso, aprirai successivamente ./UIKit.framework/English.lproj/Localizable.strings
(in TextMate). Qui puoi vedere un'ampia varietà di traduzioni che Apple usa per cose come "Stampa", "OK", "On", "Off", ecc. La vera magia è che ci sono circa 35 diverse traduzioni linguistiche che puoi copiare nel tuo possedere i file Localizable.strings, gratuitamente.
Se siete incredibilmente sfacciata e non ti dispiace mettere la stabilità futura della tua app in questione, si potrebbe saltare l'intero "copiare nel proprio Localizable.strings" processo e andare direttamente alla fonte di programmazione:
NSBundle *uiKitBundle = [NSBundle bundleWithIdentifier:@"com.apple.UIKit"];
NSString *onText = uiKitBundle ? [uiKitBundle localizedStringForKey:@"Yes" value:nil table:nil] : @"YES";
NSString *offText = uiKitBundle ? [uiKitBundle localizedStringForKey:@"No" value:nil table:nil] : @"NO";
Caveat: in nessun modo vi consiglio che in realtà accedere a queste risorse localizzate a livello di codice in un app che si intende presentare al App Store. Sto semplicemente illustrando una particolare implementazione che ho visto che affronta la tua domanda originale.
fonte
2013-09-04 17:24:39
non si può ottenere accesso alla stringa attraverso la proprietà del titolo? – tiguero
Posso ottenere il titolo di UIBarButtonItem se questo pulsante è inserito nell'interfaccia utente. Ma voglio ottenere queste traduzioni non usando il lavoro in giro. – Ramis
yourUIBarButtonItem.title ti permette di recuperare la stringa che viene visualizzata - è quello che vuoi? – tiguero