父母儿童微调器
问题描述:
我已经创建了一个类,并在布局中添加了两个微调器。父母儿童微调器
目标:如果您从第一个微调器中选择任何项目,它将更改第二个微调器的内容。我的电话是onCreate()(onItemSelected(spinnercategoryl, spinnerEnterprisel, x, i);)
。问题是,当我从第一个选择任何项目时,它会更改第二个项目的内容,但是如果我需要从第二个项目中选择任何项目,那么它将不会显示为选定项目。
public void onItemSelected(AdapterView<?> parent, View view, int pos,
long id) {
// TODO Auto-generated method stub
Spinner spinnerEnterprisel = (Spinner) findViewById(R.id.spinner_enterprise_folding_inserter);
Spinner spinnercategoryl = (Spinner) findViewById(R.id.spinner_categories);
switch (spinnercategoryl.getSelectedItemPosition()) {
case 0:
ArrayAdapter<CharSequence> adapterDatal = ArrayAdapter
.createFromResource(this,
R.array.enterprise_folding_inserter,
android.R.layout.simple_spinner_item);
adapterDatal
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerEnterprisel.setAdapter(adapterDatal);
break;
case 1:
ArrayAdapter<CharSequence> adapterData1 = ArrayAdapter
.createFromResource(this, R.array.enterprise_sorters,
android.R.layout.simple_spinner_item);
adapterData1
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerEnterprisel.setAdapter(adapterData1);
break;
case 2:
ArrayAdapter<CharSequence> adapterData2 = ArrayAdapter
.createFromResource(this, R.array.Softwares,
android.R.layout.simple_spinner_item);
adapterData2
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerEnterprisel.setAdapter(adapterData2);
break;
case 3:
ArrayAdapter<CharSequence> adapterData3 = ArrayAdapter
.createFromResource(this, R.array.workflow,
android.R.layout.simple_spinner_item);
adapterData3
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerEnterprisel.setAdapter(adapterData3);
break;
}
spinnerEnterprisel.setOnItemSelectedListener(enterprise.this);
spinnercategoryl.setOnItemSelectedListener(enterprise.this);
// Spinner spinnerEnterprisel1 = (Spinner)
// findViewById(R.id.spinner_enterprise_folding_inserter);
}
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}`
答
您已将两个Spinners设置为相同的侦听器。无论何时您在Spinner中进行选择,“小孩”Spinner都将被重置。只需删除,设置了“孩子”微调的OnItemSelectedListener
任何代码:
spinnerEnterprisel.setOnItemSelectedListener(enterprise.this);
现在的“孩子”微调将保留您所选择的选择。
非常感谢你,你是对的。 :)它现在工作正常。 – ADAM