选择第一个更改时,第二个微调器的位置设置为默认值

Second spinner's position set to default when selection of first changes

我有两个转盘,里面都有 2 个项目。当我在第一个微调器中更改我的选择时,我想将秒选择更改为默认值。 我怎样才能做到这一点? 这是我试过的代码

    @Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
    x = s1.getSelectedItemPosition();
    y = s2.getSelectedItemPosition();
    switch (x){
        case(0):
            y=0;
            switch (y){
                case(0):b1.setVisibility(View.VISIBLE);
                    b2.setVisibility(View.INVISIBLE);
                    b3.setVisibility(View.INVISIBLE);
                    b4.setVisibility(View.INVISIBLE);
                    c1.setVisibility(View.INVISIBLE);
                    c2.setVisibility(View.INVISIBLE);
                    break;
                case(1):
                    b1.setVisibility(View.INVISIBLE);
                    b2.setVisibility(View.INVISIBLE);
                    b3.setVisibility(View.INVISIBLE);
                    b4.setVisibility(View.INVISIBLE);
                    c1.setVisibility(View.VISIBLE);
                    c2.setVisibility(View.INVISIBLE);
                    break;
            }
            break;
        case(1):
            s2.setSelection(0);
            switch (y){
                case(0):b2.setVisibility(View.VISIBLE);
                    b1.setVisibility(View.INVISIBLE);
                    b3.setVisibility(View.INVISIBLE);
                    b4.setVisibility(View.INVISIBLE);
                    c1.setVisibility(View.INVISIBLE);
                    c2.setVisibility(View.INVISIBLE);
                    break;
                case(1):
                    b1.setVisibility(View.INVISIBLE);
                    b2.setVisibility(View.INVISIBLE);
                    b3.setVisibility(View.INVISIBLE);
                    b4.setVisibility(View.INVISIBLE);
                    c2.setVisibility(View.VISIBLE);
                    c1.setVisibility(View.INVISIBLE);
                    break;
            }
    }

希望这段代码对您有所帮助。

ArrayAdapter<String> secondspinnerAdapter;
ArrayAdapter<String> firstspinnerAdapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_item, firstspinnervalue);

first_spinner.setAdapter(firstspinnerAdapter);      
firstspinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
firstspinner.setOnItemSelectedListener(new OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {                       
                        // set data in arraylist.
                      secondspinnerAdapter = new ArrayAdapter<String>( mainActivity.this,  android.R.layout.simple_spinner_item,  arraylistvalue);
                      second_spinner.setAdapter(secondspinnerAdapter);
                      second_spinner.setSelection(arg2, false);
                      secondspinnerAdapter.setDropDownViewResource
                      (android.R.layout.simple_spinner_dropdown_item);

            }

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

            }
        });

看到这个 link : How to set selected item of Spinner by value, not by position?

您可以使用 spinnerObject.setSelection(DEFAULT_INDEX) 来设置第二个微调器,当您想将其改回默认值时。

spinnerObject.setSelection(0);