I want to have EditText object appear when a the User chooses “Combination” on a Spinner, How would I do this?
Here is what I have been trying:
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);
}
the EditText object combo is set in xml file as android:visibility="gone"
GroundListener Code is
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.
}
}
What is a GroundListener ?
Shouldn’t you be using an
AdapterView.OnItemSelectedListenerwith itsonItemSelectedmethod ?Beside, use
setVisibility(View.VISIBLE)instead of 0 for readability.EDIT:
I don’t understand what you are doing with your code, your GroundListener is not plugged to anything and your test is outside of the listener.
Try :
Check if that works and then bring back the code in your GroundListener to see if it works. You might have a problem though with the fact that the GroundListener might not know what is combo. But you’ll work that out.
Edit:
Syntax Correction