2017-03-01 1 views
-6

시작 활동 추가 사용자가 응용 프로그램 언어를 선택할 수있는 활동, 시작시에만이 활동을 표시하는 방법 및 사용자가 활동을 영원히 사라지게 할 때 선택하는 방법?시작시 언어 선택

+0

'SharedPreference'를 사용하십시오. – Piyush

+1

이'Activity'를 실행하기 만하면, 사용자가 필요한 언어를 선택했을 때'Intent'를 사용하여 새로운'Activity'를 시작하고'finish()'를 사용하여 닫습니다. –

+0

당신은 언어 코드 또는 이름을 저장할 필요가 어디 SharedPrefrence 또는 SQLite 그래서 때마다 귀하의 응용 프로그램을 열 때마다 설정할 수있는 언어 상태를 먼저 열어. –

답변

3

정확하게 이해하면 사용자가 처음으로 앱을 실행할 때만 해당 활동을 표시하고 싶습니다.

음, 여기 당신이 할 수있는 작업은 다음과 같습니다

1)는 SharedPreference에 대한 핸들을 가져옵니다. 이것은 사용자가 언어를 이미 선택했는지 여부를 저장하는 것입니다.

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); 

2) 커밋)는 키 - 값

editor.putBoolean("HAS_SELECTED_LANGUAGE", true); 

4에 정보를 저장) 변경 SharedPreferences.Editor

SharedPreferences.Editor editor = sharedPref.edit(); 

만들기 3

editor.commit(); 

5) 'HAS_SELECTED_LANGUAGE' 그래서/다음 활동/조각에 이동하는 경우, 활동의에서 onCreate()에서 사실 등 또한

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    ... 
    ... 
    if (sharedPref.getBoolean("HAS_SELECTED_LANGUAGE", false)) { 
     //Replace with your action to perform if it is already selected 
    } 
    ... 
} 

그것은 사용자가 돌아올 수 있도록 허용에서 언어를 변경하려면 시스템 권장된다 필요하다면 다른 곳에서.

호프가이 문제를 해결하기 바랍니다.

+0

감사합니다. – bzhar93

0

앱을 사용하는 사람들의 문화에 맞는 리소스를 지정할 수 있습니다. 사용자의 언어와 문화에 적합한 모든 자원 유형을 제공 할 수 있습니다. 예를 들어, 다음 스크린 샷은 장치의 기본 (en_US) 로켈 및 스페인어 (es_ES) 로켈에서 문자열 및 드로어 블 리소스를 표시하는 응용 프로그램을 보여줍니다.

<resources> 
     <string name="hello_world">Hello World!</string> 
    </resources> 

enter image description here

<resources> 
     <string name="hello_world">¡Hola Mundo!</string> 
    </resources> 

아래에 논리에 따라 읽기 개발자 문서

.

Supporting Different Languages and Cultures