如何在android中禁用活动开始时的McClick事件检查

如何在android中禁用活动开始时的McClick事件检查,android,android-asynctask,Android,Android Asynctask,在我的应用程序中,当用户从微调器中选择值时,对话框中有微调器,它将转到asynctask,并使用onItemClickListener执行。但是在这里,asynctask在对话框弹出时持续执行,在用户选择微调器值时,我也调试了它,我知道它将在启动时进入onItemclickListener并检查选中的public void中的值(AdapterView父项、视图、int位置、长id){}但是我需要启动异步任务只有当用户选择微调器值时,任何人都可以告诉我如何实现这一点 注意:这里的代码是我在用于列

在我的应用程序中,当用户从微调器中选择值时,对话框中有微调器,它将转到
asynctask
,并使用
onItemClickListener
执行。但是在这里,
asynctask
在对话框弹出时持续执行,在用户选择微调器值时,我也调试了它,我知道它将在启动时进入
onItemclickListener
并检查选中的
public void中的值(AdapterView父项、视图、int位置、长id){}
但是我需要启动
异步任务
只有当用户选择微调器值时,任何人都可以告诉我如何实现这一点

注意:这里的代码是我在用于列表视图的内部适配器中使用的

这是我在
onItemclickListener

leaves_type.setOnItemSelectedListener(new OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> parent, View view,
                    int position, long id) {

            //  leaves_type_string = leaves_type.getSelectedItem().toString();
                new update_leave_entry_breakup_values().execute("UpdateValues",
                        "1082", id_string, leaves_type.getSelectedItem().toString(), username, "",
                        "", "", "", "", "", "");

            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {

            }
        });

在没有用户交互的情况下,将触发您的onItemSelected

您可以通过在设置item select listener之前设置selection来避免此问题

    // Spinner element
    Spinner spinner = (Spinner) findViewById(R.id.spinner);



    // Spinner Drop down elements
    List<String> categories = new ArrayList<String>();
    categories.add("Automobile");
    categories.add("Business Services");
    categories.add("Computers");
    categories.add("Education");
    categories.add("Personal");
    categories.add("Travel");

    // Creating adapter for spinner
    ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, categories);

    // Drop down layout style - list view with radio button
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    // attaching data adapter to spinner
    spinner.setAdapter(dataAdapter);

    //setitem selection without animation
    spinner.setSelection(0, false);

    // Spinner click listener
    spinner.setOnItemSelectedListener(this);
//微调器元素
微调器微调器=(微调器)findViewById(R.id.Spinner);
//微调器下拉元素
列表类别=新建ArrayList();
类别。添加(“汽车”);
类别。添加(“商业服务”);
类别。添加(“计算机”);
类别。添加(“教育”);
类别。添加(“个人”);
类别。添加(“旅行”);
//为微调器创建适配器
ArrayAdapter dataAdapter=新的ArrayAdapter(这是android.R.layout.simple\u微调器\u项,类别);
//下拉式布局样式-带单选按钮的列表视图
dataAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉项);
//将数据适配器连接到微调器
spinner.setAdapter(dataAdapter);
//不带动画的设置项选择
微调器选择(0,false);
//微调器单击侦听器
spinner.setOnItemSelectedListener(此);

如果您仍然觉得有问题,请按照此链接在微调器中添加
Prompt
属性

<Spinner
    android:id="@+id/spinner"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:prompt="@string/spinner_title"
/>
这里的“R.id.声音”是什么?
<Spinner
    android:id="@+id/spinner"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:prompt="@string/spinner_title"
/>
Spinner s = (Spinner) (Spinner) findViewById(R.id.spinner);
    s.setAdapter(adapter);    
    s.setOnItemSelectedListener(listener);