当用户在微调器上选择“组合”时,我想让EditText对象出现,我该怎么做?

这是我一直在尝试的方法:

     ground = (Spinner) findViewById(R.id.ground);
    ArrayAdapter<CharSequence> groundAdapter = ArrayAdapter.createFromResource(
            this, R.array.ground_array, android.R.layout.simple_spinner_item);
    groundAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    ground.setAdapter(groundAdapter);
    ground.setOnItemSelectedListener(new GroundListener());
    if(ground.getSelectedItem().toString().equalsIgnoreCase("Combination"))
    {
        combo.setVisibility(0);
    }


将EditText对象组合在xml文件中设置为android:visibility="gone"

现“ GroundListener代码”为

     public class GroundListener implements OnItemSelectedListener {

            public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
                String selected = parent.getItemAtPosition(pos).toString();
            }

            public void onNothingSelected(AdapterView parent)
            {
                // Do nothing.
            }
        }

最佳答案

什么是GroundListener?

您不应该将AdapterView.OnItemSelectedListeneronItemSelected方法一起使用吗?

此外,为了便于阅读,请使用setVisibility(View.VISIBLE)而不是0。

编辑:

我不明白您在使用代码做什么,GroundListener没有插入任何东西,并且测试不在侦听器之外。

尝试:

ground.setOnItemSelectedListener(new OnItemSelectedListener() {

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

           if(parent.getItemAtPosition(pos).toString().equalsIgnoreCase("Combination"))
            {
              combo.setVisibility(View.VISIBLE);
            }
        }

        public void onNothingSelected(AdapterView parent)
        {
            // Do nothing.
        }
    });


检查是否可行,然后在您的GroundListener中恢复代码以查看是否可行。但是,您可能会遇到一个问题,即GroundListener可能不知道什么是组合。但是你会解决的。

编辑:

语法校正

关于java - 用户输入导致出现表格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6457308/

10-10 04:02