Android 重置微调器后选择“使不运行”

Android 重置微调器后选择“使不运行”,android,spinner,Android,Spinner,我的应用程序中有3个微调器,我设置了所有微调器 spinner_1.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { run_function_A();

我的应用程序中有3个微调器,我设置了所有微调器

    spinner_1.setOnItemSelectedListener(new OnItemSelectedListener()

        {

        public void onItemSelected(AdapterView<?> arg0, View arg1, 
        int arg2, long arg3)

        {
            run_function_A();   
        }

        });

spinner_3.setOnItemSelectedListener(new OnItemSelectedListener()

        {

        public void onItemSelected(AdapterView<?> arg0, View arg1, 
        int arg2, long arg3)

        {
            run_function_B();   
        }

        });

spinner_1.setOnItemSelectedListener(new OnItemSelectedListener()

        {

        public void onItemSelected(AdapterView<?> arg0, View arg1, 
        int arg2, long arg3)

        {
            run_functionC();    
        }

        });

我想在不运行run_function_A()、run_function_B()、run_function_C()的情况下进行重置。。方法如何?

您可以尝试在所有微调器上设置setOnItemSelectedListener(null),然后将默认选定项重置为第0个索引处的项,然后将setOnItemSelectedListener重置为您设置的项。我已将您的代码修改如下:

clear_all_spinner.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            spinner_1.setOnItemSelectedListener(null);
            spinner_2.setOnItemSelectedListener(null);
            spinner_3.setOnItemSelectedListener(null);
            spinner_1.setSelection(0);
            spinner_2.setSelection(0);
            spinner_3.setSelection(0);
            spinner_1.setOnItemSelectedListener(new OnItemSelectedListener()
            {
                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3)

                {
                    run_function_A();   
                }

            });

            spinner_3.setOnItemSelectedListener(new OnItemSelectedListener()

            {

                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3)

                {
                    run_function_B();   
                }

            });

            spinner_1.setOnItemSelectedListener(new OnItemSelectedListener()

            {

                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3)

                {
                    run_functionC();    
                }

            });
        }
    });
清除所有微调器.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
微调器_1.setOnItemSelectedListener(null);
微调器_2.setOnItemSelectedListener(null);
微调器_3.setOnItemSelectedListener(空);
微调器_1.setSelection(0);
微调器_2.setSelection(0);
微调器_3.setSelection(0);
微调器_1.setOnItemSelectedListener(新的OnItemSelectedListener()
{
已选择公共视图(AdapterView arg0、视图arg1、,
整数arg2,长arg3)
{
运行函数_A();
}
});
微调器_3.setOnItemSelectedListener(新的OnItemSelectedListener()
{
已选择公共视图(AdapterView arg0、视图arg1、,
整数arg2,长arg3)
{
运行函数_B();
}
});
微调器_1.setOnItemSelectedListener(新的OnItemSelectedListener()
{
已选择公共视图(AdapterView arg0、视图arg1、,
整数arg2,长arg3)
{
运行函数c();
}
});
}
});
另外,我在代码中看到一个错误,您正在为spinner_1设置两次setOnItemSelectedListener。。。请参阅,run_functionA()和run_functionC()都是为微调器_1选择设置的。我已经复制了你的代码,但你需要修改它


最好在方法块中设置设置ItemSelectedListener的代码,这样您就可以简单地调用该方法,而不是在两个位置编写相同的代码。

您可以更详细地说明您的问题。是否要禁用微调器?请再次检查,抱歉,请使用英语
clear_all_spinner.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            spinner_1.setOnItemSelectedListener(null);
            spinner_2.setOnItemSelectedListener(null);
            spinner_3.setOnItemSelectedListener(null);
            spinner_1.setSelection(0);
            spinner_2.setSelection(0);
            spinner_3.setSelection(0);
            spinner_1.setOnItemSelectedListener(new OnItemSelectedListener()
            {
                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3)

                {
                    run_function_A();   
                }

            });

            spinner_3.setOnItemSelectedListener(new OnItemSelectedListener()

            {

                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3)

                {
                    run_function_B();   
                }

            });

            spinner_1.setOnItemSelectedListener(new OnItemSelectedListener()

            {

                public void onItemSelected(AdapterView<?> arg0, View arg1, 
                        int arg2, long arg3)

                {
                    run_functionC();    
                }

            });
        }
    });