2016-07-22 4 views
1

세로 모드에서 언어를 선택하면 잘 동작합니다. 내가 방향을 가로로 변경하고 세로 모드로 돌아갈 때 기본적으로 영어가 선택됩니다. 사전방향을 바꾼 후에 언어가 다시 영어로 되돌아갑니다.

에 방향을

그래서 하나가 어떻게 위의 요구 사항을 달성하는 날을 제안 할 수 있습니다 고맙습니다 | 화면 크기 | 숨겨진 | configChanges이 = "키보드 :

나는 안드로이드 menifest 파일

안드로이드에서이 코드를 시도

+0

어디에서 언어를 변경합니까? 시스템 환경 설정? configChanges – Massimo

+0

에 "locale"을 추가해야합니다. 일부 코드를 제공해야하지만 코드에서 어떻게 든 앱 언어를 설정하는 것처럼 보입니다. 방향 변경은 고려하지 않습니다. – Korcholis

+0

구성 conf = res .getConfiguration(); conf.locale = locale; res.updateConfiguration (conf, dm); – Phoenix

답변

-1

오른쪽 방법은 응용 프로그램 개체에서 처리하는 것입니다.

public class MyApp extends Application { 

    @Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 
     // Set your locale here... 
    } 
} 
+0

로캘을 액티비티에서 변경하면 애플리케이션 클래스가이 언어를 수정하기 때문에 더 낫습니다. 그러나 우리 설정에서는 사용자 변경 언어에 옵션을주었습니다. 액티비티 클래스 –

+0

@ Yogesh Rathi가 여러분의 솔루션으로 모든 작업에서 onConfigurationChanged 메서드를 처리해야합니다. –

+0

자신의 활동을 선언 할 수 있으며 사용자 정의 활동 클래스의 모든 활동을 확장 할 수 있습니다. –

0
@Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 
     // Set your locale here... 
    } 

위의 코드를 추가하면 위의 코드가 변경되어 위의 메서드가 호출되고 로캘이 세로 로캘에 설정된 로캘을 기억하지 못합니다.

관련 문제