2016-06-01 4 views
-1

내 iOS 앱에서 언어를 변경하는 옵션이 필요합니다. 기기 설정에서 언어를 변경하지 않고 변경할 수 있습니까?iOS에서 런타임에 언어를 변경하는 방법

+1

링크를 통해 이동하십시오.이 문제가 해결됩니다 http://createdineden.com/blog/post/language-changer-in-app-language-selection-in-ios/ –

답변

0

예를 들어 다른 static json/plist 등을 다른 언어 문자열로 저장하고 옵션 구문 분석 옵션을 전환하고 라벨을 설정하면 예를 들어 저장할 수 있습니다.

+0

옵션을 전환하는 방법은 무엇입니까? –

+0

UI에서 일부 설정 페이지 또는 코드 검사 코드 ['NSLocale currentLocale]'또는'[NSLocale systemLocale] '에 스위치 버튼을 추가 할 수 있지만 표준 localized.strings – iSashok

0

는 잘 모르겠습니다 만 NSUserDefaults

NSUserDefaults* userDefaults = [NSUserDefaults standardUserDefaults]; 
NSMutableArray* languages = [userDefaults objectForKey:@"AppleLanguages"]; 
[languages insertObject:@"de" atIndex:0]; // ISO639-1 
[[NSUserDefaults standardUserDefaults] synchronize]; 
2

를 사용하여 한 번이 코드를하려고 당신은 언어를

- (void) setLanguage:(NSString*) lang { 
NSString *path = [[NSBundle mainBundle] pathForResource:lang ofType:@"lproj"]; 
if (path == nil) { 
    myBundle = [NSBundle mainBundle]; 
} else { 
    myBundle = [NSBundle bundleWithPath:path]; 
} 
if (myBundle == nil) { 
    myBundle = [NSBundle mainBundle]; 
} 
} 

을 설정하는 코드를 사용할 수 있습니다 그리고 그 후 당신과 함께 현지화를 얻을 수 있습니다

- (NSString*) localizedStringForKey:(NSString*) key { 
    return [myBundle localizedStringForKey:key value:@"" table:nil]; 
} 
관련 문제