简体   繁体   English

根据条件从另一个微调器填充微调器

[英]Populating A Spinner From Another Spinner Depending on Condition

What i need to do is if a certain item from spinner 1 is selected it needs to display a certain array in spinner 01 eg if spinner one selected item is Red spinner 01 needs to display level_array as the drop down options for spinner 01 else display cparklevel. 我需要做的是如果选择了微调器1中的某个项目,它需要在微调器01中显示某个数组,例如,如果微调器选择了一个项目,则红色微调器01需要显示level_array作为微调器的下拉选项,否则显示cparklevel 。 in essence i am trying to display how many levels each car park has. 本质上,我试图显示每个停车场有多少级别。 so spinner 1 containts car park names and spinner 01 contains levels 所以微调器1包含停车场名称,微调器01包含级别

    Spinner spinner = (Spinner) findViewById(R.id.spinner1);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this, R.array.cparkColour_array, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);

    Spinner spinner2 = (Spinner) findViewById(R.id.Spinner01);

    if(spinner.getSelectedItem().equals("Red")){


    ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource(
            this, R.array.level_array, android.R.layout.simple_spinner_item);
    adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(adapter1);
    }

    else {

    ArrayAdapter<CharSequence> adapter2 = ArrayAdapter.createFromResource(
            this, R.array.cparkLevel_array, android.R.layout.simple_spinner_item);
    adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(adapter2);
    }
}

any help would be appreciated 任何帮助,将不胜感激

Do it as: 这样做:

spinner_1.setOnItemSelectedListener(new OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> arg0, View arg1,
                    int position, long arg3) {

                            if(spinner_1.getSelectedItem().equals("Red")){
                            {
                                  // set adapter to spinner_2 here for "Red" selected
                            }
                            else
                            {
                                 // set adapter to spinner_2 for "Red" not selected
                            }
            }    
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {                
            }
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM