如何在Spinner选择时显示EditText?

时间:2011-05-14 23:03:44

标签: android android-edittext spinner

我有一个初步问题,我想让用户在某个EditText字段出现之前回答。 Spinner基本上是一个是/否的问题,选择是的我想要EditTextA显示,选择时我不希望EditTextB显示。

我认为最好的办法是同时使用EditTextA和B默认隐藏,在选择Spinner值时出现。

如果你能提供一步一步的代码,那很好,但我真正想要的是如何处理这个问题的高级方向。

2 个答案:

答案 0 :(得分:2)

有适合​​您的教程:

http://developer.android.com/resources/tutorials/views/hello-spinner.html

在onItemSelected方法中添加行:

if(pos == positionOfYes)
    editTextA.setVisibility(View.VISIBLE);
    editTextB.setVisibility(View.GONE); // or INVISIBLE
}else{
    editTextA.setVisibility(View.GONE); // or INVISIBLE
    editTextB.setVisibility(View.VISIBLE);
}

答案 1 :(得分:0)

当用户从Spinner中选择一个值时,它会向Spinner发送一个你可以监听的事件。要做到这一点,你需要在微调器上设置一个OnItemSelectedListener,它将显示正确的EditText,或者更确切地说,用正确的响应填充EditText。

您要在Spinner上调用的方法是setOnItemSelectedListener(AdapterView.OnItemSelectedListener)

您传递给它的参数将指定当Spinner选择了一个项目时您想要做什么。电话会看起来像这样:

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
  editText.setText("blah blah blah");
});