私はスピナーのsharedpreferancesに問題があります。私は2スピナーを持っています。私は共有優先度でスピナーを保存したいです。私は最初のスピナーを保存することができますが、私は第二のものを保存できません。おかげさまで ありがとうございます。 私はスピナーのsharedpreferancesに問題があります。私は2スピナーを持っています。私は共有優先度で私のスピナーを保存したいです。私は最初のスピナーを保存することができますが、私はsombodyが私に助けてくれます。以下の両方が同じであるSpinnerのSharedPreferances
を:次
final String KEY_SavedSel = "Saved Selection";
final String KEY_SavedSe2 = "Saved Selection";
変更してよう:
public class MyAndroidAppActivity extends AppCompatActivity {
String india[]={"humains","elfes","hobbits"};
String m[]={"PUNE","Mumbai","yoo"};
String b[]={"Arwen","Elrond","Galadriel","Legolas"};
String u[]={"sup","trankill","Conor","Mcgregor","Nate Diaz"};
Spinner s,s1,s2;
private Button btnSubmit;
SharedPreferences mypref;
final String KEY_SavedSel = "Saved Selection";
final String KEY_SavedSe2 = "Saved Selection";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_android_app);
s=(Spinner)findViewById(R.id.spinner1);
s1=(Spinner)findViewById(R.id.spinner2);
btnSubmit = (Button) findViewById(R.id.btnSubmit);
final ArrayAdapter<String>ia=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,india);
final ArrayAdapter<String>ma=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,m);
final ArrayAdapter<String>ba=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,b);
final ArrayAdapter<String>ua=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,u);
ia.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s.setAdapter(ia);
mypref = getPreferences(MODE_PRIVATE);
int prefsInt = mypref.getInt(KEY_SavedSel, -1);
int prefsInt1 = mypref.getInt(KEY_SavedSe2,-1);
if(prefsInt != -1){
s.setSelection(prefsInt);
}
if(prefsInt1 != -1){
s1.setSelection(prefsInt1);
}
s.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
switch (parent.getId()){
case R.id.spinner1:{
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
editor.putInt(KEY_SavedSel, position);
editor.putInt(KEY_SavedSe2, position);
editor.commit();
if(india[position].equals("humains")){
ma.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s1.setAdapter(ma);
}
if(india[position].equals("elfes")){
ba.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s1.setAdapter(ba);
}
if(india[position].equals("hobbits")){
ua.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s1.setAdapter(ua);
}
}
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
btnSubmit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MyAndroidAppActivity.this,
"Resultat : " +
"\nSpinner 1 : "+ String.valueOf(s.getSelectedItem()) +
"\nSpinner 2 : "+ String.valueOf(s1.getSelectedItem()),
Toast.LENGTH_SHORT).show();
}
});
}
}
更新された回答を確認しましたか? –
はいそれは動作しません – momo