3 回答
TA贡献1772条经验 获得超6个赞
您的代码中有两个错误。
对于您的案例,CountrySpinnerPosition 将是 0 和 1,因此案例应该是“案例 0”和“案例 1”。
在fillDiplomaDivision 方法中,您必须先清除列表,然后在添加到列表后调用notifyDataSetChanged()。
TA贡献1865条经验 获得超7个赞
尝试在第二种方法中清除 arraylist 和 notifydatasetchanged
private void fillDiplomaDivision() {
divisionArray.clear();
divisionArray.add("Select Subject:-");
divisionArray.add("Science");
divisionArray.add("CTEVT");
divisionArray.notifyDataSetChanged();
}
TA贡献1765条经验 获得超5个赞
首先,您onItemSelected对两个微调器使用相同的方法。所以删除spinnerCountry.setOnItemSelectedListener(this);和 spinnerDivision.setOnItemSelectedListener(this);
将数据设置为 spinnerCountry 后,请使用 this 。
spinnerCountry.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
if(i == 0){
fillMasterDivision();
}else{
fillBachelorDivision();
}
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
并清除您的 Division 数组 fillBachelorDivision()
添加回答
举报