Foros del Web » Programando para Internet » Android »

Muchas dudas en aplicacion sencilla con ArraysList de Strings

Estas en el tema de Muchas dudas en aplicacion sencilla con ArraysList de Strings en el foro de Android en Foros del Web. Buenas a todos. El caso es que tengo que hacer una aplicacion para Android basada en Java y sobre el entorno de Eclipse ADT y ...
  #1 (permalink)  
Antiguo 15/04/2013, 09:08
Avatar de AvkZ  
Fecha de Ingreso: abril-2013
Ubicación: Madrid
Mensajes: 1
Antigüedad: 11 años
Puntos: 0
Muchas dudas en aplicacion sencilla con ArraysList de Strings

Buenas a todos.

El caso es que tengo que hacer una aplicacion para Android basada en Java y sobre el entorno de Eclipse ADT y no consigo llevar a cabo esta tonteria ya que pocas veces he usado Arrays y llevo poco programando.

Se trata de una aplicacion sencilla que te hace una serie de preguntas y tu debes responderlas correctamente, de este modo ganas vidas o fallos según tu contestacion.

He declarado un Array de 4 elementos, tanto para las preguntas como para las respuestas pero no consigo vincularlo entre sí para que salgan por pantalla en mi campo de texto "pregunta" y en función de si es la correcta o no (posicion del array correspondiente) sume un acierto al contador equivalente

De momento solo tengo esto puesto que estoy estancado y por eso estoy aqui xD
Es la primera vez que uso Arrays en este entorno de desarrollo y no consigo hacer que se ejecuten del modo que yo quiero ademas de que no sabria que IFs meter dentro del boton 'Acertar' para relacionar la respuesta que tu escribas a mano en el editText con la pregunta que te estan haciendo en el textView, no sé si me explico.

Código:
public class MainActivity extends Activity implements OnClickListener{

    RelativeLayout contenedor;
    int aciertos = 0;
    int fallos = 0;
    int n = 0;
    ArrayList<String> arrayPreguntas;
    ArrayList<String> arrayRespuestas;
    EditText contestacion;
    TextView pregunta;
    Button acertar, pasar, reiniciar;
    Toast mensaje;
    SharedPreferences preferencias;
    
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        referenciasVistas();
        arrayPreguntas = new ArrayList<String>();
        arrayRespuestas = new ArrayList<String>();
        
        arrayPreguntas.add("¿Se dice 'Elije' o 'Elige'?");
        arrayPreguntas.add("Capital de Estonia");
        arrayPreguntas.add("Iniciales del rey actual");
        arrayPreguntas.add("El oeste se sitúa a lado..");
        
        pregunta.setText(arrayPreguntas.get(n));
        
        arrayRespuestas.add("Elige");
        arrayRespuestas.add("Tallin");
        arrayRespuestas.add("JC");
        arrayRespuestas.add("Izquierdo");
     }
    
    private void referenciasVistas(){
    	contestacion = (EditText)findViewById(R.id.contestacion);
    	pregunta = (TextView)findViewById(R.id.pregunta);
    	acertar = (Button)findViewById(R.id.Acertar);
    	reiniciar = (Button)findViewById(R.id.reiniciar);
    	pasar = (Button)findViewById(R.id.pasar);
    	
    	
    	acertar.setOnClickListener(this);
    	pasar.setOnClickListener(this);
    	reiniciar.setOnClickListener(this);
    	//mensaje = Toast.makeText(this, "", Toast.LENGTH_LONG).show();
    }

	@Override
	public void onClick(View v){
		switch(v.getId()){
		case R.id.Acertar:
			String respuesta = contestacion.getText().toString()
			//if (arrayRespuestas.contains(respuesta)){
				//aciertos++;};break;
			;break;
		case R.id.reiniciar:
			
			;break;
		case R.id.pasar:
			
			;break;
		}
		
	}
   
    
}
public class MainActivity extends Activity implements OnClickListener{

	RelativeLayout contenedor;
	int aciertos = 0;
    int fallos = 0;
    int n = 0;
    ArrayList<String> arrayPreguntas;
    ArrayList<String> arrayRespuestas;
    EditText contestacion;
    TextView pregunta;
    Button acertar, pasar, reiniciar;
    Toast mensaje;
    SharedPreferences preferencias;
    
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        referenciasVistas();
        arrayPreguntas = new ArrayList<String>();
        arrayRespuestas = new ArrayList<String>();
        
        arrayPreguntas.add("¿Se dice 'Elije' o 'Elige'?");
        arrayPreguntas.add("Capital de Estonia");
        arrayPreguntas.add("Iniciales del rey actual");
        arrayPreguntas.add("El oeste se sitúa a lado..");
        
        pregunta.setText(arrayPreguntas.get(n));
        
        arrayRespuestas.add("Elige");
        arrayRespuestas.add("Tallin");
        arrayRespuestas.add("JC");
        arrayRespuestas.add("Izquierdo");
     }
    
    private void referenciasVistas(){
    	contestacion = (EditText)findViewById(R.id.contestacion);
    	pregunta = (TextView)findViewById(R.id.pregunta);
    	acertar = (Button)findViewById(R.id.Acertar);
    	reiniciar = (Button)findViewById(R.id.reiniciar);
    	pasar = (Button)findViewById(R.id.pasar);
    	
    	
    	acertar.setOnClickListener(this);
    	pasar.setOnClickListener(this);
    	reiniciar.setOnClickListener(this);
    	//mensaje = Toast.makeText(this, "", Toast.LENGTH_LONG).show();
    }

	@Override
	public void onClick(View v){
		switch(v.getId()){
		case R.id.Acertar:
			String respuesta = contestacion.getText().toString()
			//if (arrayRespuestas.contains(respuesta)){
				//aciertos++;};break;
			;break;
		case R.id.reiniciar:
			
			;break;
		case R.id.pasar:
			
			;break;
		}
		
	}
   
    
}
No consigo hacer que se visualice ningun elemento de mi array de preguntas en el campo de la pregunta y aun me faltaria hacer el caso del switch para el boton de "Pasar de pregunta" y que sumara uno al contador de fallos.

Aver si me podeis echar un cable con el tema de los arrays tanto de preguntas como respuestas y aclararme que IF o pautas deben ir en cada uno de los botones inferiores. MUCHAS GRACIAS!

Os adjunto además la captura de la aplicacion para que sea mas intuitivo la compresión del codigo:

  #2 (permalink)  
Antiguo 15/04/2013, 11:37
Avatar de zero_master  
Fecha de Ingreso: junio-2011
Ubicación: Leon, Gto
Mensajes: 290
Antigüedad: 12 años, 10 meses
Puntos: 74
Respuesta: Muchas dudas en aplicacion sencilla con ArraysList de Strings

Saludos te lo andas complicando en esta parte
Cita:
String respuesta = contestacion.getText().toString()
//if (arrayRespuestas.contains(respuesta)){
//aciertos++;};break;
Usa solo lo siguiente para comparar la respuesta
Cita:
if(respuesta.equals("Elige") || respuesta.equals("elige")){
aciertos++; break; }

Etiquetas: activity, aplicacion, dudas, eclipse, java, layout, muchas, sencilla, strings, todo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:12.