[ Foro de Java ]

no lo consigo (onItemSelected)

22-Apr-2014 00:25
Invitado (ereperez)
0 Respuestas

buenas hago aqui mi pregunta porque creo que la programacion en java y en android son muy similares. disculpad mi ignorancia si meto la pata, soy muy nuevo.
bueno ahi va. tengo un string "nombres" que utilizo para dos spinner. la idea es simple, con un tree map y dos editext-(multitext) quiero que al seleccionar  item en spinner salga la descripcion de ese item en editext(primero) y a la vez quiero ver la descripcion del otro spinner01 en editext(segundo) ...problema, al seleccionar  un item de cualquier spinner me rellena los editext con la misma descripcion ¿como hago  para poner dos "onItemSelected"?
gracias
un saludo


package com.crucespartidos.cruces;


import java.util.TreeMap;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;




public class Main extends Activity implements OnItemSelectedListener {
	private final static String[] nombres = { "seleccione", "castillo", "el tarumbo",
			"la portilla", "luey", "quijano","salcedo", "villa de cartes", "cobreces", "hualle", "los remedios", "mazcuerras", "paraiso", "tanos"  };
	private TreeMap<String, String> descrip;

	private ArrayAdapter<String> adapter;
	private ArrayAdapter<String> adapter1;
	private Spinner Spinner;
	private Spinner Spinner01;

	private EditText primero;
	private EditText segundo;
	

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_cruces);

		primero = (EditText) findViewById(R.id.primero);
		segundo = (EditText) findViewById(R.id.segundo);

		adapter = new ArrayAdapter<String>(this,
				android.R.layout.simple_spinner_dropdown_item, nombres);
		adapter1 = new ArrayAdapter<String>(this,
				android.R.layout.simple_spinner_dropdown_item, nombres);

		Spinner = (Spinner) findViewById(R.id.Spinner);
		Spinner.setAdapter(adapter);
		Spinner.setOnItemSelectedListener(this);
		
		Spinner01 = (Spinner) findViewById(R.id.Spinner01);
		Spinner01.setAdapter(adapter1);
		Spinner01.setOnItemSelectedListener(this);
		

		rellenarDescripciones();
	}
	
	private void rellenarDescripciones() {
		
		descrip = new TreeMap<String, String>();
		
		descrip.put(
				"seleccione",
				"calendarios 2ªA  \n   grupo Nº 2º");
		descrip.put(
				"castillo",
				"29/03   Salcedo  (Casa)\n\n05/04   VilladeCartes (cartes)\n\n12/04   Los ");
		descrip.put(
				"el tarumbo",
				"30/03 Los Remedios(Casa)\n\n06-04 Luey(Luey)\n\n12-13/04 ");
		descrip.put(
				"la portilla",
					"29/03   Cobreces  (Cobreces)\n\n06/04   Hualle (Casa)\n\n12/04   ");
		descrip.put(
				"luey",
				"29/03   Quijano  (Quijano)\n\n06/04   El Tarumbo (Casa)\n\n13/04   Tanos ");
				
		descrip.put(
				"quijano",
				"29/03   Luey  (Casa)\n\n05-06/04   Descanso\n\n12/04   La Portilla ");
		descrip.put(
				"salcedo",
				"29/03   Castillos  (Oreña)\n\n06/04   Mazcuerras (Casa)\n\n12/04   Paraiso ");
		descrip.put(
				"villa de cartes",
");		
		descrip.put(
				"cobreces",
				"29/03   La Portilla  (Casa)\n\n05/04   Paraiso (Oruña)\n\n12/04  Hualle ");
		descrip.put(
				"hualle",
				"29/03   Descanso\n\n06/04 La Portilla  (Barcenilla)\n\n12/04   Cobreces ");
		descrip.put(
				"los remedios",
				"30/03   El Tarmbo (Corrales)\n\n 29/03 Tanos (Casa)\n\n12/04  Castillo ");
		descrip.put(
				"mazcuerras",
				"30/03   Paraiso  (Casa)\n\n06/04   Salcedo (Vioño)\n\n13/04 Cartes ");
		descrip.put(
				"paraiso",
				"30/03   Mazcuerras  (Mazcuerras)\n\n05/04   Cobreces (casa)\n\n12/04  ");
		descrip.put(
				"tanos",
				"30/03  Cartes  (Casa)\n\n29/04   Los Remedios (Coo)\n\n13/04   Luey ");
		
	}

	@Override
	public void onItemSelected(AdapterView<?> adapter, View view, int position,
			long id) {
       

		String name = nombres[position];

		String description = descrip.get(name);

		segundo.setText(description);
		
		
		String name1 = nombres[position];

		String description1 = descrip.get(name1);
		
		primero.setText(description1);
    }
	

	@Override
	public void onNothingSelected(AdapterView<?> parent) {
		// TODO Auto-generated method stub
		
	}	
	
}





(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)