Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/06/2013, 13:09
largaxa
 
Fecha de Ingreso: junio-2013
Mensajes: 2
Antigüedad: 11 años, 6 meses
Puntos: 0
Juego Ahorcado

Buenas a todos, estoy aprendiendo a programar en android y tengo un pequeño problema con la realizacion de mi codigo. A la hora de lanzar los eventos setOnItemClickListener y setOnClickListener me da error y me pide hacer un cast pero si le pongo el cast al lanzar la aplicacion me la lanza y salta error. Les pego mi codigo a ver si me pueden ayudar

Gracias de antemano!


Cita:

package com.example.ahorcado;

import java.util.Random;

import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.TextView;

public class MainActivity extends Activity {

GridView tablaLetras;
Button boton;
TextView textoRaya;
TextView textoResultado;
TextView fallos;
ImageView imagenes;
String[] Sabecedario= new String[]{"A","B","C","D","E","F","G","H","I","J","K","L"," M","N","Ñ","O","P","Q","R","S","T","U","V","W","X" ,"Y","Z"};
String[] Ssolucion = new String[]{"_","_","_","_","_","_","_","_"};
String[] Spalabras = new String[]{"MARIA","PEDRO","ANTONIO","JUAN","ALVARO","DAVID" ,"RAUL","LAURA","TERESA","MARTA","ROCIO","OLIVIA", "CRISTINA","RUBEN","IRENE","LUCAS","MIGUEL","LUIS" ,"CARLOTA","LUCIA","CARLOS"};
int aleatorio;
boolean error=true;
int numErrores = 0;
int numAciertos=0;

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

this.textoRaya=(TextView)findViewById(R.id.textVie w1);
this.textoResultado=(TextView)findViewById(R.id.Me nsajeResultado);
this.fallos=(TextView)findViewById(R.id.NumFallos) ;
this.tablaLetras=(GridView)findViewById(R.id.Tabla Abecedario);

// ArrayAdapter<String> adaptador=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Sabecedario);

// this.tablaLetras.setAdapter(adaptador);
this.boton=(Button)findViewById(R.id.BEmpezar);
this.imagenes=(ImageView)findViewById(R.id.imagene s);

this.textoRaya.setText("");

//ERRRORES
tablaLetras.setOnItemClickListener(this);
boton.setOnClickListener(this);

jugar();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

public void fotosErrores()
{
if(numErrores==0)
{
this.imagenes.setImageResource(R.drawable.error_0) ;
}
else if(numErrores==1)
{
this.imagenes.setImageResource(R.drawable.error_1) ;
}
else if(numErrores==2)
{
this.imagenes.setImageResource(R.drawable.error_2) ;
}
else if(numErrores==3)
{
this.imagenes.setImageResource(R.drawable.error_3) ;
}
else if(numErrores==4)
{
this.imagenes.setImageResource(R.drawable.error_4) ;
}
else if(numErrores==5)
{
this.imagenes.setImageResource(R.drawable.error_5) ;
}
else if(numErrores==6)
{
this.imagenes.setImageResource(R.drawable.error_6) ;
}
else if(numErrores==7)
{
this.imagenes.setImageResource(R.drawable.error_7) ;
}
else if(numErrores==Cool
{
this.imagenes.setImageResource(R.drawable.error_8) ;
}
else if(numErrores==9)
{
this.imagenes.setImageResource(R.drawable.error_9) ;
}
}

public void jugar()
{
ArrayAdapter<String> adaptador=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Sabecedario);
tablaLetras.setAdapter(adaptador);

this.numErrores=0;
this.fallos.setText("fallos "+numErrores+"/9");
this.numAciertos=0;
this.Ssolucion=new String[]{"_","_","_","_","_","_","_","_"};
this.tablaLetras.setEnabled(true);
this.tablaLetras.setBackgroundColor(Color.WHITE);
this.textoRaya.setText("");
this.textoResultado.setText("");

Random r = new Random();
this.aleatorio=r.nextInt(19-0);

for(int i=0;i<Spalabras[aleatorio].length();i++)
{
this.textoRaya.setText(textoRaya.getText()+"_ ");
}

fotosErrores();
}

public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
arg1.setEnabled(false);
arg1.setBackgroundColor(Color.RED);
String palabraJugando;
this.error=true;
this.textoRaya.setText("");

for(int i=0;i<Spalabras[aleatorio].length();i++)
{
palabraJugando=""+Spalabras[aleatorio].charAt(i);

if(Sabecedario[arg2].equals(palabraJugando))
{
this.Ssolucion[i]=this.Sabecedario[arg2];
this.numAciertos++;
arg1.setBackgroundColor(Color.GREEN);
this.error=false;
}

this.textoRaya.setText(this.textoRaya.getText()+" "+this.Ssolucion[i]);
}

if(numAciertos==Spalabras[aleatorio].length())
{
this.textoResultado.setText("Felicidades eres el ganador!");
this.tablaLetras.setEnabled(false);
}

if(error==true)
{
this.numErrores++;

jugar();

this.fallos.setText("fallos "+numErrores+"/9");

if(numErrores==9)
{
this.textoResultado.setText("Lo siento has perdido");
this.tablaLetras.setEnabled(false);
}
}
}

public void onClick(View arg0)
{
if(arg0.getId()==R.id.BEmpezar)
{
jugar();
}
}

}