如何执行选择微调项目的任务

时间:2015-10-30 04:28:26

标签: android android-spinner

我想在选择一个微调器项目时添加异步任务,并将一些数据添加到另一个微调器。如果我选择一个项目,它的效果很好。但即使不选择,它也会自动执行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
                    }
                });

如何在单击微调器项后执行异步任务。请帮帮我。

1 个答案:

答案 0 :(得分:4)

旋转器的设计很糟糕。不幸的是,当您致电spinner.setOnItemSelectedListener时,它会自动拨打onItemSelected。这对你的代码来说不是问题,微调器就是这样设计的。我知道它很糟糕,但这就是它的工作原理。

解决方法

如果假设您的微调器有4个条目,则在顶部添加一个条目,即第0个位置,现在创建微调器时onItemClicked被调用,它将具有位置0.所以只需添加一个if条件

if (!(position == 0)){//do your stuff}