我想在选择一个微调器项目时添加异步任务,并将一些数据添加到另一个微调器。如果我选择一个项目,它的效果很好。但即使不选择,它也会自动执行AsyncTask。这就是我试过的
district
.setAdapter(new ArrayAdapter<String>(MainActivity.this,
android.R.layout.simple_spinner_dropdown_item,
ssservice));
// Spinner on item click listener
district
.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0,
View arg1, int position, long arg3) {
// TODO Auto-generated method stub
// ed_spinner = district.getSelectedItem().toString();
new NetCheck2().execute();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
如何在单击微调器项后执行异步任务。请帮帮我。
答案 0 :(得分:4)
旋转器的设计很糟糕。不幸的是,当您致电spinner.setOnItemSelectedListener
时,它会自动拨打onItemSelected
。这对你的代码来说不是问题,微调器就是这样设计的。我知道它很糟糕,但这就是它的工作原理。
解决方法强>
如果假设您的微调器有4个条目,则在顶部添加一个条目,即第0个位置,现在创建微调器时onItemClicked
被调用,它将具有位置0.所以只需添加一个if条件
if (!(position == 0)){//do your stuff}