2017-12-11 30 views
2

私のコードには、国と都市のスピナーがあります。アプリを起動すると、スピナーのリストがアルファベット順に並べ替えられます。最後に閉じた設定でアプリを起動するにはどうすればよいですか?

最後に閉じた設定でアプリケーションが開きます。例: 国の場合はフランス、スピナーの場合はパリを選択します。 その後、アプリを終了します。再開する。最初の要素state_spinはフランス、city_spinはパリになります。

どうすればいいですか?ありがとう..

 state_spin = (Spinner) findViewById(R.id.spinner1);   
    city_spin = (Spinner) findViewById(R.id.spinner2); 

    new spinner1_countries(context,UrlMain,arrayAdpt_state,state_spin).execute(); 
       //to get state lists from a website   

    state_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
       @Override 
       public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
       final String[] stateList = spinner1_countries.stateList; 

       new spinner2_city(context, arrayAdpt_state,city_spin).execute(); //to get city lists 

      } 
    public void onNothingSelected(AdapterView<?> arg0) { }  }); 

    city_spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
    @Override 
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
    ...... 

答えて

7

SharedPreferencesに以前に選択したオプションを保存することができます。あなたのアプリケーションが再び起動したら、これらのデフォルト値をSharedPreferencesからロードし、セレクタのデフォルトとして設定します。

はSharedPreferencesに位置を保存し、すてきなチュートリアルユーザーが、スピナーで何かを選択し here

2

を探す:

:あなたのアプリがセットスピナーの位置を取得し始めている

@Override 
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
     ... 
     SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context); 
     SharedPreferences.Editor editor = sp.edit(); 
       editor.putInt("1st_spinner", position); 
       editor.apply(); 
     } 

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context); 
int position = sp.getInt("1st_spinner", 1); 
state_spin.setSelection(position); 
関連する問題