2012-10-30 2 views
1

해결해야 할 약간의 문제가 있습니다.
내 응용 프로그램에서 나는 내 애플 리케이션의 언어를 영어에서 스웨덴어로 바꿀 수있는 설정을 할 것이다. 그래서 어떻게해야할까요?

다른 strings.xml 파일로 변경하거나 사용자가 완숙을 변경하려고 할 때 수동으로 strings.xml의 모든 텍스트를 변경해야합니까?

팁과 예제를 어떻게 해결해야합니까?Android 다른 문자열로 변경 .xml

+0

가능한 [언어 변경 programaticall y 안드로이드에서] (http://stackoverflow.com/questions/2900023/change-language-programatically-in-android) – Sam

답변

5

당신이와 있다고 할 수있다 :이

String languageToLoad = "your language code"; 
Locale locale = new Locale(languageToLoad); 
Locale.setDefault(locale); 
Configuration config = new Configuration(); 
config.locale = locale; 
getBaseContext().getResources().updateConfiguration(config, 
getBaseContext().getResources().getDisplayMetrics()); 

당신은 기본적으로 그냥 로케일을 변경, 그 때문에 당신의 언어도

+0

그래서 나는 내 자신의 폴더 값 - 벼랑을 만들고 내 strings.xml을 스웨덴어에 넣었습니까? 하지만 다른 모든 .xml 파일도 필요합니까? 배열, 색상, 스타일 등과 같은가요? – JussT

+0

@ JussT 그냥 문자열 – shkschneider

+1

을 만들면 values-swe 폴더를 만들어야하며 거기에 strings.xml 파일을 넣을 수 있습니다. 다른 언어로 제공되기를 원하는 모든 것 – Ahmad

1

당신은 로컬, 로케일을 변경해야합니다 :

Resources res = context.getResources(); 
// Change locale settings in the app. 
DisplayMetrics dm = res.getDisplayMetrics(); 
Configuration conf = res.getConfiguration(); 
conf.locale = new Locale('fr'); 
res.updateConfiguration(conf, dm); 

Change language programmatically in Android

관련 문제