简体   繁体   English

设置微调框的可见性

[英]Set Visibility of a Spinner

All- I have two spinners side by side. 全部-我有两个并排的微调器。 I want it to be so that if an item in spinner1 is selected, spinner2 is invisible and visa versa. 我希望这样,如果在spinner1中选择了一个项目,则spinner2是不可见的,反之亦然。 In other words the user should only be able to select one spinner. 换句话说,用户应该只能选择一个微调器。 Here is my code concerning the spinners: 这是我有关微调器的代码:

 //Spinner 1
    List<String> spin1= new ArrayList() ;
    spin1.add("Select");
    spin1.add("1");
    spin1.add("2");
    spin1.add("3" );
    spin1.add("4");


    Spinner spinner1 = (Spinner) findViewById(R.id.houses);
    ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,
                R.layout.spinnerlayout, spin1);


    adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner1.setAdapter(adapter1);

    //Spinner 2
    List<String> spin2 = new ArrayList() ;
    spin2.add("Select");
    spin2.add("1");



    Spinner spinner2 = (Spinner) findViewById(R.id.hotels);
    ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(this,
                R.layout.spinnerlayout, spin2);


    adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(adapter2);

Sample code welcome. 欢迎使用示例代码。 Thank you for your time. 感谢您的时间。

The idea is simple enough: 这个想法很简单:

    spinner1.setOnItemSelectedListener(new OnItemSelectedListener() {
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            if(position != 0)
                spinner2.setVisibility(View.GONE);
            else
                spinner2.setVisibility(View.VISIBLE);
        }

        public void onNothingSelected(AdapterView<?> parent) {}
    });

And vica versa for spinner2 . 而正相反的spinner2 You'll need to change the definitions of spinner1 and spinner2 so that they are visible to the whole class: 您需要更改spinner1spinner2的定义,以便它们在整个类中可见:

public class ... {
    Spinner spinner1;
    Spinner spinner2;

    @Override
    public void onCreate() {
        spinner1 = ...

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

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