Как отобразить EditText при выборе счетчика?

#android #android-edittext #spinner

#Android #android-edittext #счетчик

Вопрос:

У меня есть предварительный вопрос, на который я хочу, чтобы пользователи ответили до того, как должно появиться определенное поле EditText. Счетчик — это, по сути, вопрос «Да / Нет», при выборе «Да» я хочу, чтобы отображался EditTextA, при выборе «Нет» я хочу, чтобы отображался EditTextB.

Я считаю, что лучший способ сделать это — скрыть оба EditTextA amp; B по умолчанию, появляющиеся при выборе значения счетчика.

Если бы вы могли предоставить пошаговый код, отлично, но то, что я действительно ищу, — это высокоуровневое руководство о том, как я должен подойти к этому.

Ответ №1:

Для вас есть руководство:

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. Спасибо, я действительно ценю направление, прибил его!

Ответ №2:

Когда пользователь выбирает значение из вашего счетчика, он отправляет на счетчик событие, которое вы можете прослушать. Для этого вам следует установить OnItemSelectedListener на свой счетчик, который будет оттуда отображать правильный EditText, или, скорее, заполнять ваш EditText правильным ответом.

Метод, который вы хотите вызвать в своем счетчике, setOnItemSelectedListener (AdapterView.OnItemSelectedListener)

Параметр, который вы передаете в него, будет указывать, что именно вы хотите сделать, когда в вашем счетчике будет выбран элемент. Вызов будет выглядеть примерно так:

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